1.0.2 • Published 2 years ago
vue3-flight-event-bus v1.0.2
vue3-flight-event-bus
一款针对vue3的轻量级事件总线插件。
背景
相比于vuex,bus在使用上更加快捷便利。对于逻辑较为简单的方法,bus利用事件抛发的原理进行传递数据而不是通过数据劫持,不需要复制一份相同的 data来进行数据管理。然而vue3移除了事件总线API,为此提供了一个针对vue3的bus插件。
安装
$ npm install vue3-flight-event-bus --save
引入使用
import bus from 'vue3-flight-event-bus'
// 监听指定方法名的事件
bus.on('foo', e => console.log('foo', e) )
// 监听所有事件
bus.on('*', (type, e) => console.log(type, e) )
// 启动一个事件
bus.emit('foo', { a: 'b' })
// 取消监听
emitter.off('foo', () => {}))
直接使用
通过实例访问
export default {
created() {
this.$eventBus.emit('foo')
}
}
通过inject访问
import { inject } from 'vue'
export default {
setup() {
const bus = inject('$eventBus')
bus.emit('foo')
}
}