$bus是什么? 关于$bus 我们把它叫做事件总线,它Vuex很像,但是它不是用来管理状态的,是管理事件总线的。主要是解决无关系组件之间的交互问题。 组件中使用 可以通过this.$bus.$emit(‘aaa’)发送事件函数 可以通过this.$bus.$on(‘aaa’)接受事件函数 在一个组件中发送 methods:{ foo(){ this.$bus.$emit('aaa',this.aaa)//发送数据,第一个参数是发送数据的名称,接收时还用这个名字接收,第二个参数是这个数据现在的位置; } } 1 2 3 4 5 另一个组件接受 created() { this.$bus.$on('aaa', (aaa)=>{}) //接收数据,第一个参数是数据的名字,与发送时的名字对应,第二个参数是一个方法,要对数据的操作 } 1 2 3 因为$bus没有挂载vue所以一直是undefined 可以在main.js中挂载 Vue.prototype.$bus = new Vue()