创建bus.js文件,我放在了util文件夹下。bus.js也可以全局挂载,在main.js文件中处理。
放在main.js里是Vue.prototype.$bus = new Vue()
bus.js
import Vue from "vue";
export default new Vue;
one.vue 传值组件
export default {
data() {},
mounted() {},
methods: {
// 标签上绑定的处理事件
handlerSearch() {
let obj = { title: "标题", page: 1 };
bus.$emit("search", obj);
}
}
}
two.vue
export default {
data() {},
mounted() {
// 在组件实例创建时不会调用此代码段
bus.$on("search", (val) => {
console.log('val:', val);
});
},
methods: {}
}