我想做的是..。
EventEmitter = require('events').EventEmitter
events = new EventEmitter()
events.emit.apply(null, ['eventname', 'arg1', 'arg2', 'arg3'])...but它似乎不工作或抛出一个错误,有帮助吗?
发布于 2013-09-19 20:48:50
在Apply方法上,您需要通知两个参数:一个有效的作用域(方法中的"this“值)和参数数组。
发布于 2013-10-07 19:44:57
我认为emit()函数的EventEmitter是期望this是一个实际的EventEmitter对象。如果传入events对象,下面的内容似乎有效。
events.emit.apply(events, ['eventname', 'arg1', 'arg2', 'arg3'])
虽然在这一点上,最好还是打电话给
emit('eventname', 'arg1', 'arg2', 'arg3')
我猜emit()方法正在遍历一个已注册事件的内部列表,以查看是否存在匹配的事件。我不知道这是否有帮助,只是我今天遇到的一些事情.
https://stackoverflow.com/questions/18904613
复制相似问题