Wie kann ich EventEmitter in Angular 2 abbestellen?

7
%Vor%

In der Official Angular 2 Typescript-Definition scheint es keine Möglichkeit zu geben, EventEmitter stumm zu schalten oder abzubestellen.

Ich habe im Laufe der Zeit einen Rückruf erhalten, da die Seiten denselben EventEmitter verwenden

    
tom10271 08.04.2016, 08:03
quelle

2 Antworten

19

EventEmitter erweitert den Betreff. Wenn Sie ein Thema abonnieren, erhalten Sie eine Subscription , die Sie später zum Abbestellen verwenden können.

%Vor%

Tipp
Verwenden Sie EventEmitter für nichts anderes als @Output() s. Angular garantiert nicht, dass EventEmitter die Subject weiter ausdehnt oder in Zukunft sogar wie eine Subject funktioniert.

    
Günter Zöchbauer 08.04.2016, 08:06
quelle
6

Weil EventEmitter nur verwendet werden sollte, um Ereignisse von Komponenten auszulösen

Wenn Sie keine Ausgabeeigenschaft in einer Komponente verwenden, verwenden Sie anstelle eines EventEmitter ein Observable oder ein Subject.

Vielleicht sollten sie den Namen in OutputPropertyEmitter ändern.

    
Mark Rajcok 08.04.2016 15:55
quelle

Tags und Links