当要监听的时候,new 一个 事件发射器, emit 发射消息,on接收消息。
Event Emitter例子:
const EventEmitter = require('events');
// 创建一个新的事件发射器实例
const emitter = new EventEmitter();
// 添加事件监听器,监听名为 'message' 的事件
emitter.on('message', (msg) => {
console.log('接收到消息:', msg);
});
// 模拟发送消息
function sendMessage(message) {
console.log('发送消息:', message);
// 发射名为 'message' 的事件,并传递消息作为参数
emitter.emit('message', message);
}
// 发送几条消息
sendMessage('Hello, world!');
sendMessage('How are you?');
sendMessage('Fine, thanks!');
在这个例子中,我们首先创建了一个新的 EventEmitter 实例。然后我们添加了一个事件监听器,监听名为 'message' 的事件。当 'message' 事件被发射时,监听器会打印接收到的消息。
接着,我们定义了一个 sendMessage
函数,用于发送消息。在 sendMessage
函数中,我们首先打印发送的消息,然后通过 emit
方法发射 'message' 事件,并将消息作为参数传递给监听器。
最后,我们调用 sendMessage
函数几次来发送消息,每次发送后都会触发监听器打印接收到的消息。
这就是一个简单的 Event Emitter 的例子,它展示了如何使用 EventEmitter 来创建自定义事件和监听器。