之前我们已经对父子组件之间的通信有了一定的理解 #22 ,那么对于非父子组件之间的通信该如何实现呢?
Event Bus
首先, 新建一个 bus.js, 使用一个空的 Vue 实例作为事件总线
1 | import Vue from 'vue' |
再新建两个组件:
a组件
1 | <template> |
b组件
1 | <template> |
最后将 a , b 组件展示出来
1 | <template> |
此时点击 a 组件中的按钮,就会发现 b 中的 msg 变成了 data from aa component
vuex
在复杂情况下, 就应该考虑使用
vuex来管理状态了