vuebus.js
// 定义bus插件,用户数据传递
const install = function(Vue) {
const Bus = new Vue({
methods: {
emit(event, ...args) {
this.$emit(event, ...args)
},
on(event, callback) {
this.$on(event, callback)
},
off(event, callback) {
this.$off(event, callback)
}
}
})
Vue.prototype.$bus = Bus;
}
export default install;
main.js
import vuebus from '@/utils/vuebus'
Vue.use(vuebus)
this.$bus.emit('getMessage', 'qqqq')
created () { this.$bus.on('getMessage', this.showMsg ) }, beforDestory () { this.$bus.off('getMessage', this.showMsg) }