当有非父子关系的组件进行通信是我们可以通过一个vue实例来作为中转站
步骤如下:
1.新建bus.js作为中转站
import Vue from 'Vue';
export default new Vue;
2.在需要触发事件的组件a中加入:
import bus from './bus.js'
bus.$emit('change','HelloWorld')
3.在组件b监听事件触发:
import bus from './bus.js'
bus.$on("change", val => { // 一般加载组件create或mounted
console.log(val);
});