Ich habe zwei Komponenten in meiner Angular 4-Anwendung, sagen wir listComponent & searchComponent, die keine Beziehungen haben. Ich möchte eine Funktion in listComponent aufrufen, während ein Suchkriterium aus searchComponent ausgewählt wird. Welcher ist der beste und effizienteste Weg, dies auch in Anbetracht der Leistung zu tun?Eckig, Was ist der beste Weg, um zwischen unabhängigen Komponenten zu kommunizieren?
Entweder:
1) I Ausgangsereignisse Wurzel können und die Datenänderungen machen einen Datendienst verwendet wird, das heißt, schalten die Komponente anzuzeigen und die Daten von einem gemeinsamen Dienst bekommen. Hier muss ich jedesmal ngAfterViewChecked() oder ngOnChange() aufrufen und einige Flags verwenden, um die neue Suche aus searchComponent auszuwählen.
2) Verwenden Sie ein rxjs/behavioralSubject im Datendienst und setzen Sie es von searchComponent und subskribieren Sie es in listComponent.
'2.' natürlich von meiner Seite. Weil es einen sauberen Code macht. – Jai