1.父传子
a------在父元素中定义事件
b------给子元素使用v-bind绑定属性
c------子元素中使用props接收数据
props:{数据名:数据类型}
d------在子元素中使用
2.子传父
a------在父元素中定义事件
b------给子元素用v-on绑定自定义事件
d------在子元素中使用this.$emit('自定义事件的名字',传递的参数)调用
3.任意组件通信
a-------下载pubsub(npm i pubsub-js)
b-------引入pubsub import pubsub from 'Pubsub-js'
c-------在mounted中使用
Pubsub.scrible('事件名',事件处理函数)
d-------在子元素中使用
Pubsub.publish('事件名',传递的参数)
4.全局事件总线
a.------在main.js中绑定$bus
beforeCreate(){
vue.prototype.$bus=this
}
b.------在父组件中绑定$on
mounted(){
this.$bus.$on('事件名',事件处理函数)
}
c.------在子组件中调用$emit
this.$bus.$emit('事件名',传递的参数)
d.-----在父组件中销毁
destroyed(){
this.$bus.$off('事件名')
}