目录
- 1.什么是全局事件总线
- 2.安装
- 3.使用
- 4.销毁
- 完整版示例:
1.什么是全局事件总线
一种组件间通信的方式,适用于任意组件间通信。
2.安装
在main.js里安装全局事件总线:
new Vue({
......
beforeCreate(){
//安装全局事件总线,$bus就是当前应用的vm
Vue.prototype.$bus=this
}
......
})
3.使用
使用全局事件总线:
1.接收数据:A组件想接收数据,则要在A组件中给$bus绑定自定义事件,事件的回调留在A组件自身。
methods(){
//事件的回调,用来接收数据
demo(data){
……
}
}
……
mounted(){
//必须要在mounted中绑定自定义事件,xxx为自定义事件的名称,this.demo为事件回调
this.$bus.$on(‘xxx',this.demo)
}
2.提供数据:B组件要给A组件传递数据,就要触发A组件中的自定义事件并携带要传递的数据
this.$bus.$emit(‘xxx',数据)
4.销毁
最好在beforeDestory的狗子函数中,用$off去解绑当前组件所用到的事件
//在A组件中,组件销毁之前解绑事件
beforeDestory(){
this.$bus.$off('xxx')
}
完整版示例:

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)