【发布时间】:2014-03-14 04:49:31
【问题描述】:
我正在为某些事件动态创建事件侦听器。在那个事件侦听器中,我想根据事件名称进行另一个发出调用,所以我想获取事件侦听器名称
我正在使用 node.js 事件发射器。
var events = require('events').EventEmitter;
var util = require('util');
.....
.....
for(i in events) {
transport.on(events[i],function(userId) {
eventName = events[i];
var acct = accountsList[userId];
if(acct) {
acct.emit(events[i],userId);
}
});
}
上述方法有效,但问题行是
acct.emit(events[i],userId);
events[i] 具有循环的最后一个值。因此,如果收到任何事件,它总是会发出 events[i] 值的最终循环...
【问题讨论】:
-
我们能看到更多代码吗?如果没有更多的上下文,很难说出发生了什么。
标签: javascript node.js eventemitter