如何将回调函数设置为 EventEmitter 中的第一个回调?

How to set a callback function to be the first callback in EventEmitter?

我有一个共享事件发射器说 myEmitter。

myEmitter.on('fire', callback1); 
myEmitter.on('fire', callback2); 
... 
myEmitter.on('fire', callbackN);

现在的问题是:我想要 myEmitter.on('fire', myTopCallBack); 并且我希望 myTopCallBack 成为 'fire' 事件发生时第一个被调用的回调函数。

是否可以订阅回调作为第一个回调?

您可以使用 emitter.prependListener():

myEmitter.on('fire', callback1); 
myEmitter.on('fire', callback2); 
... 
myEmitter.on('fire', callbackN);

myEmitter.prependListener('fire', myTopCallBack);