EventEmitter

事件发射器类

new SDK.EventEmitter()

实现发布-订阅模式,允许对象注册事件监听器并触发事件

Classes

EventEmitter

Members

maxListeners : number

最大监听器数量,用于防止内存泄漏

Methods

emit(eventType, data)boolean

触发事件
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!');

eventNames()Array.<string>

获取所有已注册的事件类型
Returns:
事件类型数组

listenerCount(eventType)number

获取指定类型的监听器数量
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,支持链式调用
Need help? Use AI.