Classes
Members
最大监听器数量,用于防止内存泄漏
Methods
触发事件
| Name | Type | Description |
|---|---|---|
eventType |
string | 事件类型 |
data |
* | optional 事件数据 |
Returns:
是否有监听器被触发
Example:
const emitter = new EventEmitter();
emitter.on('message', (data) => {
console.log('Received:', data);
});
emitter.emit('message', 'Hello World!');
获取所有已注册的事件类型
Returns:
事件类型数组
获取指定类型的监听器数量
| Name | Type | Description |
|---|---|---|
eventType |
string | 事件类型 |
Returns:
监听器数量
off(eventType, handler) → EventEmitter
移除事件监听器
| Name | Type | Description |
|---|---|---|
eventType |
string | 事件类型 |
handler |
EventHandler | optional 要移除的处理函数,如果不指定则移除该类型的所有监听器 |
Returns:
返回this,支持链式调用
on(eventType, handler, options) → EventEmitter
注册事件监听器
| Name | Type | Description |
|---|---|---|
eventType |
string | 事件类型 |
handler |
EventHandler | 事件处理函数 |
options |
ListenerOptions | optional 监听器配置选项 |
Returns:
返回this,支持链式调用
Example:
const emitter = new EventEmitter();
emitter.on('click', (data) => {
console.log('Clicked:', data);
});
once(eventType, handler, options) → EventEmitter
注册一次性事件监听器
| Name | Type | Description |
|---|---|---|
eventType |
string | 事件类型 |
handler |
EventHandler | 事件处理函数 |
options |
ListenerOptions | optional 监听器配置选项 |
Returns:
返回this,支持链式调用
removeAllListeners(eventType) → EventEmitter
移除所有监听器或指定类型的监听器
| Name | Type | Description |
|---|---|---|
eventType |
string | optional 事件类型,如果不指定则移除所有监听器 |
Returns:
返回this,支持链式调用
setMaxListeners(count) → EventEmitter
设置最大监听器数量
| Name | Type | Description |
|---|---|---|
count |
number | 最大监听器数量 |
Returns:
返回this,支持链式调用
