婚纱摄影网站设计,嘉祥县建设局网站,网页设计个人网站作业,变装WordPressVue学习笔记3—全局事件总线
1.全局事件总线可以实现任意组件间通信 X需具备的条件#xff1a;
所有的组件都要能看见X可以调用$on $off $emitVue.prototype.x {a:1, b:2} 可以被所有组件看见VueComponent.protoype.proto Vue.prototype组件实例对象(vc)可以访问到Vue原型上…Vue学习笔记3—全局事件总线
1.全局事件总线可以实现任意组件间通信 X需具备的条件
所有的组件都要能看见X可以调用$on $off $emitVue.prototype.x {a:1, b:2} 可以被所有组件看见VueComponent.protoype.proto Vue.prototype组件实例对象(vc)可以访问到Vue原型上的属性、方法 2. 安装全局事件总线main.js)
//创建vm
new Vue({el:#app,render: h h(App),beforeCreate() {Vue.prototype.$bus this //安装全局事件总线$bus就是当前应用的vm},
})3.使用事件总线
接收数据: A组件想接收数据则在A组件中给$bus绑定自定义事件事件的回调留在A组件自身。
methods(){demo(data){......}
}
......
mounted() {this.$bus.$on(hello,this.demo)//绑定自定义事件
},
B组件触发自定义事件并提供数据,
this.$bus.$emit(hello,data最好在A组件的beforeDestroy钩子中用$off去解绑当前组件所用到的事件已防止$bus负担过重
beforeDestroy(){this.$bus.$off(hello)
}