Skip to content

events.Function.createDelegator

github-actions[bot] edited this page Jun 8, 2026 · 2 revisions

@zenstone/ts-utils / events / createDelegator

Function: createDelegator()

createDelegator<E>(callbacks): EventsDelegator<E>

Defined in: src/events/index.ts:259

创建函数式事件委托者

将一组回调映射(EventsCallbacks)封装为 EventsDelegator,通过 inject/eject 与 emitter 绑定或解绑。inject 时存储反注册函数,eject 时统一清理。

Type Parameters

E

E extends EventsDefinition = EventsDefinition

Parameters

callbacks

EventsCallbacks<E>

事件回调映射

Returns

EventsDelegator<E>

EventsDelegator 实例

Example

type AppEvents = { data: { value: number }; close: undefined };

const delegator = createDelegator<AppEvents>({
  data: ({ value }) => console.log('received', value),
  close: [() => console.log('closed'), () => cleanup()],
});

delegator.inject(emitter);  // 注册所有回调
delegator.eject();          // 取消所有回调(无需传 emitter)

Clone this wiki locally