//创建一个用于通信的bus模块
let bus = {
install($){
//在vue的原型上添加getBus和setBus
$.prototype.getBus = this.get
$.prototype.setBus = this.set
},
get(key){
//如果实例上有bus对象,返回查询结果,否则undefined
if(this.bus){
return this.bus[key]
}else{
return undefined
}
},
set(key,value){
//如果实例上没有bus对象,创建一个,并设置属性
if(!this.bus){
this.bus = {}
}
this.bus[key] = value
}
}
Vue.use(bus);
//注:写在vue中的main文件中即可.
//当我们在使用的时候。
created(){
this.setBus('name','xiaoming');
console.log(this.getBus('name'));
}
使用EventBus事件车(事件总线)实现组件通信
最新推荐文章于 2024-09-25 08:08:37 发布