上次讲到了父子组件传值,这次讲下Vue中用eventBus实现兄弟组件传值。兄弟组件出现的情况通常是父组件下有多个子组件,子组件相互要传递值。这里用的自己写的一个Todo List例子,在menu页下todoList组件点击完成事项后传递到finishList组件。
1. 创建eventBus.js
eventBus作为一个中央事件总线,用于监听todoList抛出的事件,并出发finishList的接收事件。
import Vue from 'vue'
export default new Vue()
2. 在兄弟组件中引用eventBus,并加入$emit和on方法
TodoList:在methods中用$emit
发送传递值。