事件 EventEmitter

EventEmitter

EventEmitter 是内置模块 "events" 里唯一的类, 实现事件的触发和监听回调.

events 类方法

  • listenerCount(emitter, event) 指定事件在某个监听器内的监听数量

EventEmitter 成员方法

  • addListener(event, listener) 添加方法, 同 on() 方法
  • on(event, listener) 监听器数组的末尾添加一个新的监听器,同 event 不覆盖
  • once(event, listener) 添加一次性事件监听, 触发一次后会被移除
  • removeListener(event, listener) 移除一个指定监听器,多次添加多次移除
  • removeAllListeners([event]) 移除所有监听器
  • getMaxListeners() 最大监听器数量
  • setMaxListeners(n) 设置最大的监听器数量
  • defaultMaxListeners 默认最大监听器数量, 10
  • listeners(event) 返回指定事件的监听器数组
  • emit(event[, arg1][, arg2][, …]) 执行监听器, 该事件有监听器返回true

特殊事件

  • newListener 参数 event, listener. 在添加新监听器时触发
  • removeListener 参数 event, listener. 在移除新监听器时触发
  • error 出现错误时触发

自定义 EventEmitter 子类

新建子类 (MyEvent.js)

使用

相关文章

0 Comments
Leave a Reply