前边已经讲过父子组建之间的通讯方式 现在记录下非父子组建之间的通信方式
- 非父子组建通信通信需要借助到一个自定义文件 bus.js
import Vue from "vue";
const eventbus = new Vue()
export default eventbus
公共文件创建完之后到自己的具体页面组建中
组建1 这里同时记录传值和接收值的方法
import eventbus from "../Utils/bus";
<button @click="meHello">我说</button>
methods: {
meHello() {
eventbus.$emit("meSay", "你也666");
}
}
mounted() {
eventbus.$on("sayYes", (value) => {
console.log("jack 说的的是" + value);
});
},
看一下另外一个组建中的定义 跟这里其实是一样的只是事件跟接收反过来
import bus from "../Utils/bus.js";
<button @click="sayHello">say Hello</button>
methods: {
sayHello() {
bus.$emit("sayYes", "老铁666");
},
},
mounted() {
bus.$on("meSay", (value) => {
console.log("me说的是" + value);
});
},
到这非父子组建通信就实现了