为了账号安全,请及时绑定邮箱和手机立即绑定

vue中父子组件交互问题

vue中父子组件交互问题

牧羊人nacy 2018-07-23 21:35:32
问题描述有这样一个简单的需求: 页面有一个按钮, 点击会有一个弹窗, 弹窗上有个关闭按钮, 点击可以关闭这个弹窗用vue的组件来做大约是这样的<component-parent>     <component-child>         ....我是内容....        <button>点我关闭</button>     </component-child>          <button>点我打开</button></component-parent>问题出现的环境背景及自己尝试过哪些方法我的实现方式是这样的:打开操作(父组件操作):show(){     this.isShow = true     .....做其他的事情.... }hide(){     this.isShow = false }关闭操作(子组件操作):this.$parent.hide()这样做能实现功能, 但是就是不太优雅, 因为这样父组件必须实现子组件调用的方法/属性, 耦合会很高emit我也想过, 但我觉得这样更不好
查看完整描述

2 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

sync 修饰符了解一下。

<component-child :visible.sync="isShow"></component-child>

// 子组件内的关闭方法handleClose() {   this.$emit('update:visible', false);
}


查看完整回答
反对 回复 2018-07-29
?
交互式爱情

TA贡献1712条经验 获得超3个赞

<component-child @cancel=cancel></component-child>
父组件中定义cancel函数

查看完整回答
反对 回复 2018-07-29
  • 2 回答
  • 0 关注
  • 1846 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信