Vue组件通信中eventBus的使用
vuex加入后,对组件之间的通信有了更加清晰的操作,对于中大型的项目来说,一开始就把vuex的使用计划在内是明智的选择。 然而在一些小型的项目,eventBus的作用就体现出来了。 主要是现实途径是在要相互通信的兄弟组件之中,都引入一个新的vue实例,然后通过分别调用这个实例的事件触发和监听来实现通信和参数传递。 这里来看一个简单的例子: 比如,我们这里有三个组件,main.vue、click.vue、show.vue。click和show是父组件main下的兄弟组件,而且click是通过v-for在父组件中遍历在了多个列表项中。这里要实现,click组件中触发点击事件后,由show组件将点击的是哪个dom元素console出来。 首先,我们给click组件添加点击事件 < div class= "click" @click .stop .prevent = "doClick($event)" ></div> 想要在doClick()方法中,实现对show组件的通信,我们需要新建一个js文件,来创建出我们的eventBus,我们把它命名为bus.js import Vue from 'vue' ; export default new Vue(); 这样我们就创建了一个新的vue实例。接下来我们在click组件和show组件中import它。 import Bus from