-
一种组件间通信的方式,适用于任意组件间通信。
-
安装全局事件总线:
new Vue({ ...... beforeCreate() { Vue.prototype.$bus = this //安装全局事件总线,$bus就是当前应用的vm }, ...... })
-
使用事件总线:
-
接收数据:A组件想接收数据,则在A组件中给$bus绑定自定义事件,事件的回调留在A组件自身。
methods(){ demo(data){......} } ...... mounted() { this.$bus.$on('xxxx',this.demo) }
-
提供数据:
this.$bus.$emit('xxxx',数据)
-
-
最好在beforeDestroy钩子中,用$off去解绑当前组件所用到的事件。
Vue:全局事件总线 (GlobalEventBus)
于 2022-05-17 09:38:29 首次发布
本文介绍了如何使用Vue.js的全局事件总线进行组件间的通信。首先,通过在Vue实例的beforeCreate钩子中安装$bus,然后在组件内部利用$on监听事件并使用$emit触发数据传递。同时强调了在beforeDestroy钩子中解除事件绑定的重要性。
摘要由CSDN通过智能技术生成