阅读:6227回复:1
【good】Vue组件通信中eventBus的使用
在vue1.0中,组件之间的通信主要通过vm.沿着父链向上传播和用broadcast向下广播来实现。然而在vue2.0中,已经废除了这种用法。
vuex加入后,对组件之间的通信有了更加清晰的操作,对于中大型的项目来说,一开始就把vuex的使用计划在内是明智的选择。 然而在一些小型的项目,或者说像我这样写到一半才发现vue2.0用不了和dispatch的人来说,就需要一个比较便捷的解决方法。那么,eventBus的作用就体现出来了。 主要是现实途径是在要相互通信的兄弟组件之中,都引入一个新的vue实例,然后通过分别调用这个实例的事件触发和监听来实现通信和参数传递。 这里来看一个简单的例子: 比如,我们这里有三个组件,main.vue、click.vue、show.vue。click和show是父组件main下的兄弟组件,而且click是通过v-for在父组件中遍历在了多个列表项中。这里要实现,click组件中触发点击事件后,由show组件将点击的是哪个dom元素console出来。 首先,我们给click组件添加点击事件: |
|
沙发#
发布于:2020-03-25 14:30
|
|