Node.js 中的 EventEmitter 是一个用于处理事件的核心模块。它提供了一种简单而有效的方式来处理异步操作和事件驱动的编程。在 Node.js 中,几乎所有的核心模块都继承自 EventEmitter,比如 fs、http 等。
使用 EventEmitter
要使用 EventEmitter,首先需要引入它:
const EventEmitter = require('events');然后创建一个实例:
const myEmitter = new EventEmitter();
监听事件
可以使用 on 方法来监听事件:
myEmitter.on('event', () => {
console.log('触发了 event 事件');
});触发事件
可以使用 emit 方法来触发事件:
myEmitter.emit('event');传递参数
除了触发事件外,还可以传递参数:
myEmitter.on('sum', (a, b) => {
console.log(`a + b = ${a + b}`);
});
myEmitter.emit('sum', 2, 3);一次性事件监听
可以使用 once 方法来监听一次性事件:
myEmitter.once('onceEvent', () => {
console.log('只会触发一次');
});
myEmitter.emit('onceEvent');
myEmitter.emit('onceEvent'); // 不会再次触发移除事件监听
可以使用 off 方法来移除事件监听:
const listener = () => {
console.log('监听器');
};
myEmitter.on('removeListenerEvent', listener);
myEmitter.off('removeListenerEvent', listener);以上就是关于 Node.js EventEmitter 的基本使用方法,接下来我们会继续学习更多关于 Node.js 的知识。