eventEmitter Listener und Emitter mit unterschiedlichen Parametern

7

Können wir mehrere Listener eines Emitters haben, von denen jeder an einer unterschiedlichen Anzahl von Argumenten arbeitet?

z.B. Lassen Sie Ereignisemitter wie folgt aussehen:

%Vor%

Wenn das Obige wahr ist, welcher Parameter dann zu welchem ​​Listener geht?

    
nirvanastack 25.06.2014, 17:18
quelle

2 Antworten

14

Event-Listener nur normale JS-Funktionen. Sie können also beliebig viele Argumente übergeben, aber nur die Funktion kann auf die Argumente zugreifen, die Sie in Funktionsdefinition deklariert haben, z. B.

%Vor%

Tatsächlich können Sie sehen, dass alle bereitgestellten Argumente immer an jede Funktion übergeben wurden. Wenn Sie in der Funktionsdeklaration keine Argumentnamen definieren, können Sie nicht direkt auf diese Argumente zugreifen. Sie können jedoch in jeder Funktion magische Argumente verwenden, um auf alle bereitgestellten Argumente zuzugreifen. Natürlich lieferte das Argument der Funktion in der Reihenfolge, in der sie an EE übergeben wurden.

    
mynameisdaniil 25.06.2014 17:44
quelle
4

Der EventEmitter scheint alle Listener mit dem Methode anwenden . Daher kann jeder Listener erwarten, Argumente in der gleichen Reihenfolge zu erhalten, die an die Funktion emit übergeben wird. Der folgende Code demonstriert, dass der parameterlose Listener weiterhin alle Argumente für die Funktion erhält.

%Vor%     
Hayes 25.06.2014 17:41
quelle