vue中实现组件通信的方式有:1.通过props传递实现组件通信;2.使用ref设置父子组件实现组件通信;3.使用parent创建兄弟组件通信侨联实现组件通信;4.使用provide与inject定义祖后代组件实现组件通信;
vue中实现组件通信的方式有以下几种
通过props传递实现组件通信
props:{ // 字符串形式
name:String // 接收的类型参数
// 对象形式
age:{
type:Number, // 接收的类型为数值
defaule:18, // 默认值为18
require:true // age属性必须传递
}
}
使用ref设置父子组件实现组件通信
<Children ref="foo" />
this.$refs.foo // 获取子组件
使用parent创建兄弟组件的通信侨联实现组件通信
this.$parent.on('add',this.add)this.$parent.emit('add')
使用provide与inject定义祖后代组件实现组件通信
1)祖先组件通过provide设置传值
provide(){ return {
foo:'foo'
}
}
2)后代组件通过inject接收祖先组件传值
inject:['foo']