请问vue里面的vue事件总线线是什么?为什么非父组件传值要新建vue实例?

下面的组件A和组件B可以是项目中任意两个组件

//组件A中监听事件

//组件B中,触发事件

方式二稍微有点麻烦,但也很容易理解

大概的实现思路: 新建一个bus.js文件 在这个文件裏实例化一下vue;然后在组件A和组件B中分别引入这个bus.js文件,将事件监听和事件触发都挂到bus.js这个实例上这样就可以实现全局的监听与触发了

版权声明:本文为博主原创文章未经博主允许不得转载。 /qq_/article/details/

项目中使用了vue事件总线线eventBus来进行两个组件间的通信
使用方法是是建立eventBus.js文件,暴露一个空的Vue实例如下:

在需偠通信的两个组件中分别import

然后就可以通过emit、on进行通信:如下:

其中可能会遇到一个坑是$on()会触发多次,具体原因跟生命周期有关详细分析鈳参考:

附上github上Vue作者尤大大关于这问题的解答:

我要回帖

更多关于 vue事件总线 的文章

 

随机推荐