apply() 在 Node.js eventemitter 的 emit() 函数上不起作用



apply() 方法不适用于 Node 的事件发射器的 emit 函数。

我执行以下 2 条语句:

this._baseEmitter.emit('activity', {test: 'zever1'});
this._baseEmitter.emit.apply(this, ['activity', {test: 'zever2'}]);

前 1 运行良好,事件被我的侦听器捕获。

然而,第二个绝对没有做任何事情。

有谁知道为什么?emit() 函数是否可能缺少应用方法?如果是这样,我认为我会收到一些错误消息,但事实并非如此。

不应该this._baseEmitter第一个参数吗?

this._baseEmitter.emit.apply(this._baseEmitter, ['activity', {test: 'zever2'}]);

最新更新