要在Nodejs中实现一个EventEmitter,可以使用EventEmitter类。该类的实例可以触发事件,并可以监听该实例上的事件。以下是一个简单的示例:
const EventEmitter = require('events'); class MyEmitter extends EventEmitter {} // 创建一个新的EventEmitter实例 const myEmitter = new MyEmitter(); // 监听一个事件 myEmitter.on('event', (arg1, arg2) => { console.log('触发了事件', arg1, arg2); }); // 触发事件 myEmitter.emit('event', '参数1', '参数2');
在这个例子中,我们创建了一个新的EventEmitter实例和一个名为'event'
的事件监听器。当我们调用emit()
方法时,这个监听器就会执行,打印出两个参数。
除了on()
方法外,EventEmitter类还支持其他方法,如once()
(只监听一次事件)、emit()
(触发事件)和removeListener()
(移除事件监听器)等。