Node.jsベースのプロジェクトには、いくつかのオブジェクトがあります。
EmitterA
EmitterB
Consumer
のコンストラクターにはConsumer
、次のものがあります。
var a = new EmitterA();
a.on('someEvent', someEventHandler);
のコンストラクターにはEmitterA
、次のものがあります。
var self = this;
var b = new EmitterB();
b.on('someEventFromB', function() {
self.emit('someEvent');
});
最後に、EmitterB
のコンストラクターには、次のようなものがあります。
this.emit('someEventFromB');
問題は、最初のfromが起動されたときにConsumer
'ssomeEventHandler()
が起動されないことです。その理由はタイミングの1つです。 イベントが発生するまで、サブスクライブしません。.emit()
EmitterB
Consumer
someEvent
EmitterA
構築時にイベントハンドラーをアタッチする方法はありますか?newListener
イベント の利用を検討しましたが、後で複数のリスナーを操作する場合や、さまざまな種類のイベントが発生する場合は問題になります。可能であればこのルートを避けたいので、あなたが提案できる代替案を探しています。ありがとう!