Ich habe 2 Geschwisterkomponenten zur gleichen Zeit für den Benutzer angezeigt. Einer von ihnen ist eine QuestionList, die eine Reihe von Fragen aus dem Service und eine Liste von Fragen anzeigt. Sobald Sie sich auf eine bestimmte Frage klicken zeigt es (neben der Liste) Frage Details unten Angular 2 Geschwisterkomponenten 2-Wege-Bindung
Frage Detail Komponente gesehen mag verwendet Router Frage-ID aus der URL zu nehmen und speichert sie in einer separaten Variable namens selectedQuestion wie folgt aus:
selectedQuestion: Question;
ngOnInit() {
this.subscription = this.route.params.subscribe(
(params: any) => {
this.questionIndex = params['questionId'];
this.selectedQuestion = this.qs.getQuestion(this.questionIndex);
}
);
}
In der Vorlage selectedQuestion wird mit binded [(ngModel)] -> 2-Wege-Datenbindung, so kann ich einfach durch das Senden selectedQuestion an den Dienst, die Frage aktualisieren.
Ich habe Schwierigkeiten zu verstehen, warum und wie Angular2 die Liste aktualisiert, wenn ich etwas in der Frage Detailansicht ändere? Ich dachte, Ursache habe ich separate Variable namens selectedQuestion erstellt, Liste auf der linken Seite sollte nicht aktualisiert werden, bis ich Änderungen an die Verwendung des Dienstes drücken? Mein Verständnis der Verwendung von ngModel ist, dass es 2-Wege-Bindung nur an selectedQuestion und definitiv nicht zu aktualisieren mein Service
Kasse meine Antwort unter – Aravind