Node.js 事件模块
示例
为名为“scream”的事件创建一个事件监听器,然后触发该事件
var events = require('events');
var eventEmitter = new events.EventEmitter();
eventEmitter.on('scream', function() {
console.log('检测到尖叫声!');
});
eventEmitter.emit('scream');
运行示例 »
定义和用法
Events 模块提供了一种处理事件的方式。
在 Node.js 中,所有事件都是 EventEmitter 对象的一个实例
语法
在应用程序中包含 Events 模块并创建 EventEmitter 的语法
var events = require('events');
var eventEmitter = new events.EventEmitter();
EventEmitter 属性和方法
方法 | 描述 |
---|---|
addListener() | 添加指定的监听器 |
defaultMaxListeners | 设置单个事件允许的最大监听器数量。默认为 10 |
emit() | 调用所有已注册并具有指定名称的监听器 |
eventNames() | 返回一个包含所有已注册事件的数组 |
getMaxListeners() | 返回单个事件允许的最大监听器数量 |
listenerCount() | 返回具有指定名称的监听器数量 |
listeners() | 返回一个具有指定名称的监听器数组 |
on() | 添加指定的监听器 |
once() | 仅添加指定的监听器一次。当指定的监听器执行后,该监听器将被移除 |
prependListener() | 将指定的监听器作为具有指定名称的第一个事件添加 |
prependOnceListener() | 将指定的监听器作为具有指定名称的第一个事件添加,仅添加一次。当指定的监听器执行后,该监听器将被移除 |
removeAllListeners() | 移除具有指定名称的所有监听器,或者如果未指定名称则移除所有监听器 |
removeListener() | 移除具有指定名称的指定监听器 |
setMaxListeners() | 设置单个事件允许的最大监听器数量。默认为 10 |