【发布时间】:2016-07-26 12:53:39
【问题描述】:
有没有办法只允许自定义 eventEmitter 中的某些事件?
例如,如果我有这样的东西,一切都会按预期工作:
const EventEmitter = require('events');
class myEvent extends EventEmitter {
constructor() {
super();
var self = this;
setInterval(function() {
self.emit('1stEvent');
}, 1000)
setInterval(function() {
self.emit('2ndEvent');
}, 2000)
}
}
var MyEvent = new myEvent();
MyEvent.on('1stEvent', function () {
console.log('1st Event triggered');
});
MyEvent.on('2ndEvent', function () {
console.log('2nd Event triggered');
});
MyEvent.on('3rdEvent', function () {
console.log('3rd Event triggered');
});
我在第一个事件上每秒收到一个回调,在第二个事件上每 2 秒收到一个回调。第三次什么也没发生,因为我没有发出这个事件。有没有办法让这个类告诉我这个事件没有定义,我不能给它添加监听器,或者只能给事件 1 和 2 添加监听器?
【问题讨论】:
标签: javascript node.js dom-events eventemitter