EventDispatcher<Events>
Defined in: tools/event.ts:58
事件调度器 提供类型安全的事件添加、移除和分发功能
Example
// 定义事件类型
interface MyEvents {
'click': { x: number; y: number };
'change': { value: string };
}
// 创建事件调度器
class MyEventDispatcher extends EventDispatcher<MyEvents> {}
// 使用事件调度器
const dispatcher = new MyEventDispatcher();
dispatcher.addEventListener('click', (data) => {
console.log(`Click at ${data.x}, ${data.y}`);
});
dispatcher.dispatchEvent('click', { x: 10, y: 20 });
Extended by
Type Parameters
| Type Parameter | Default type | Description |
|---|---|---|
Events extends EventMap | EventMap | 事件映射类型 |
Implements
IEventDispatcher<Events>
Constructors
Constructor
new EventDispatcher<Events>(): EventDispatcher<Events>;
Returns
EventDispatcher<Events>
Methods
addEventListener()
addEventListener<T>(type, listener): void;
Defined in: tools/event.ts:66
添加事件监听器
Type Parameters
| Type Parameter |
|---|
T extends string | number | symbol |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<Events[T]> | 事件监听器函数 |
Returns
void
Implementation of
IEventDispatcher.addEventListener
dispatchEvent()
dispatchEvent<T>(type, data): void;
Defined in: tools/event.ts:94
分发事件
Type Parameters
| Type Parameter |
|---|
T extends string | number | symbol |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
data | Events[T] | 事件数据 |
Returns
void
Implementation of
IEventDispatcher.dispatchEvent
hasEventListener()
hasEventListener<T>(type, listener): boolean;
Defined in: tools/event.ts:76
检查是否已添加指定的事件监听器
Type Parameters
| Type Parameter |
|---|
T extends string | number | symbol |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<Events[T]> | 事件监听器函数 |
Returns
boolean
如果已添加监听器则返回true,否则返回false
Implementation of
IEventDispatcher.hasEventListener
removeAllEventListeners()
removeAllEventListeners(): void;
Defined in: tools/event.ts:107
移除所有事件监听器
Returns
void
Implementation of
IEventDispatcher.removeAllEventListeners
removeEventListener()
removeEventListener<T>(type, listener): void;
Defined in: tools/event.ts:85
移除事件监听器
Type Parameters
| Type Parameter |
|---|
T extends string | number | symbol |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<Events[T]> | 事件监听器函数 |
Returns
void