2016-07-14 15 views
8

Dears, Die goldenen Regeln über Interaktion Web-Komponente sind:Angular2: Ausgang/Eingang im Vergleich Ereignis/ViewChild - Komponenten Wechselwirkungen

  • Geordnete Referenzen direkte Kinder
  • Kinder verweist nicht auf Mutter
  • Eltern -> Child: über Methodenaufrufe
  • Child -> Parent: über Ereignisse

Diese patte rn arbeitete für uns in vielen Projekten (YUI, JQuery, ...) Was ist mit Angular2?

Sollten wir:

oder Input/Output?

Die erste Wahl sieht wunderschön aus. @ angular2 @expert, Woran denkst du?

Thx an alle, Gabriel

+0

Meine persönliche Präferenz ist die Eingabe/Ausgabe. Übergeben Sie die Daten per Eingabe an das Kind und geben Sie die Ereignisse aus, die die Eltern über die Ausgabe hören sollen. –

Antwort

0

denke ich, Service-Methode am besten wäre, weil ich viele Leute wissen, vertraut finden, mit dieser Arbeit und ist eine gute Art und Weise Sie in home.If sind zu fühlen Sie Angular Material Thema verwenden dann können Sie nicht direkt @input()@output() und @viewchlid Methode für die Kommunikation der Komponente verwenden.

0

hängt es je nach Bedarf. Nur um klar zu sein Output und events sind die gleichen. So ist die Strömung sehr ähnlich:

  • Elternteil übergibt Daten an Kind über Input
  • Kind übergibt Daten an Eltern über Output die EventEmitter

Es gibt auch eine dritte Option ist, wo Sie in beiden Richtungen kommunizieren können vom Kind zum Elternteil und Elternteil zum Kind oder sogar von einer Komponente zur anderen. Es verwendet Service-Injection, wobei Ihr Service eine Subject hat und Komponenten, die diesen Service injizieren, den Subject-Wert abonnieren oder aktualisieren können.