事件巴士,管理事件的发布与订阅。
TListeners 事件名称及其对应的回调描述
Signature:
export declare class EventBus<TListeners extends EventBusListeners>
const bus = new EventBus<{
success: (payload: { message: string }) => any
}>()
bus.on('success', ({ message }) => console.log(message))
bus.emit('success', { message: '提交成功' })
// => 控制台输出: 提交成功
Constructor | Modifiers | Description |
---|---|---|
(constructor)(options) | 构造函数。 |
Method | Modifiers | Description |
---|---|---|
emit(eventName, args) | 发布事件。 | |
off(eventName, callbackOrTag) | 取消订阅事件,若没有指定回调,则取消所有回调。 | |
on(eventName, callback) | 订阅事件。 | |
once(eventName, callback) | 订阅事件,但只订阅一次即取消订阅。 |