Angular2 - Wie man Daten teilt / zwischen Komponenten wechselt

Angenommen, Sie haben eine Benutzeroberfläche mit einer Symbolleiste, einer Seitenleiste und einem Raster. Die Symbolleiste enthält eine Dropdown-Liste, in der der Inhalt in der Seitenleiste und im Raster geändert wird, wenn sich ein Benutzer ändert. Zurück in Winkel 1 würde ich einen Dienst verwenden, um alle meine dynamischen Daten zu haben. Wenn sich im Service etwas ändert, werden auch alle Komponenten, die diesen Service verwenden, aktualisiert.

Nun in Angular 2 sieht es so aus, als würden die Leute verschiedene Methoden anwenden. Ich wollte Ihre Eingaben einholen, für die der bevorzugte Weg ist.

Static Service OnChangesEingänge und Ausgäng

Aktualisier - 03/09/16

Sieht so aus, als wäre die beste Lösung der Thread, den Thierry Templier gepostet hat:Delegation: EventEmitter oder Observable in Angular2

Die verbleibende Frage, die ich habe, ist, ob es die beste Vorgehensweise ist, für jedes Datenelement, das von Komponenten gemeinsam genutzt wird, einen neuen Dienst zu erstelle

See Plnkr for code

Original Plunker - Jede Änderung hat einen eigenen Service

Revised Plunker zum Beispiel - Nur ein Dienst, der alle Daten im Objekt speichert. Ein Typ wird an jeden Listener übergeben, um zu prüfen, ob er basierend auf diesem Typ etwas tun muss.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage