EventBus 事件管理类
liz-q 2020/12/28
首先引入并实例化
import { EventBus } from '@liz-q/utils'
const eventBus = new EventBus()
监听一个事件
eventBus.on('event-bus-click', (params, cb) => {
console.log(params)
cb && cb()
})
触发事件
eventBus.emit('event-bus-click', 123, () => {
// 回调函数
})
删除事件函数,一个事件句柄上可以监听多个事件函数,off
函数可以删除一个事件函数
const handler = (params) => {}
// 监听
eventBus.on('event-bus-click', handler)
// 删除
eventBus.off('event-bus-click', handler)
清空所有事件
eventBus.clear('event-bus-click')
注册一次性事件
eventBus.once('once-click', (params) => {})
eventBus.emit('once-click', 123) // 只能触发一次