108 votes

Angulaire de l'Événement du 2 émetteurs vs Sujet

Dans Angulaire 2 quelle est la différence entre le Cas de l'Émetteur et sous réserve pour annoncer un événement? Il semble que l'événement émetteurs sont moins compliquées à déclarer....Ce qui est préféré par Angulaire 2?

dataRefreshEvent = new EventEmitter();

private companyDataAnnouncedSource = new Subject();
companyDataAnnouncedSource$ = this.companyDataAnnouncedSource.asObservable();

161voto

Günter Zöchbauer Points 21340

Il n'y a pas beaucoup de différence. EventEmitter s'étend Subject.

Le Angular2 équipe a souligné le fait que, que, EventEmitter ne doit pas être utilisé pour autre chose alors @Output()s dans les composants et les directives.

L'Angulaire de l'équipe a déclaré qu'ils peuvent changer l'implémentation sous-jacente de l' EventEmitter et de briser le code de l'utilisateur qui utilise EventEmitter pour quelque chose, il n'était pas prévu pour. C'est la principale différence.

51voto

Pro7ect Points 177

Aussi EventEmitter obtient nettoyé automatiquement contrairement à la coutume Subjects que vous avez besoin de vous désabonner en onDestroy cycle de vie du crochet.

5voto

justMe Points 513

EventEmitter par défaut est synchrone, alors que le Sujet ne l'est pas. Vous pouvez passer d'un drapeau à EventEmitter pour le rendre asynchrone.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X