Ich habe einige Möglichkeiten gefunden zwischen Parent to Child
und Child to Parent
, zu kommunizieren scheint wie:
$broadcast:
von Eltern Pass zu Child $emit:
Übergang von Kind zu Eltern.
Oben wird nützlich sein, wenn Sie denselben Controller und andere Komponenten haben, während Sie mit verschiedenen Komponenten arbeiten, sowie Controller nicht Eltern- oder Kindbereich aktualisieren, Ergebnisse, die Sie nicht in der Lage sind, den aktualisierten Wert anzuzeigen.
Die Dinge, die helfen können, ist die Bindung mit Controller, die ich bereits für die Kommunikation verwendet habe.
Umgehung:
mit Pop-up verschiedenen Komponenten zu zeigen, die jeder Controller verbrauchen kann:
this.$mdDialog.show({
scope: this.$scope,
preserveScope: true,
bindToController: true,
template: '<somecomponentname get-back-items="$ctrl.getBackItems"></somecomponentname>'
});
während somecomponentname Komponente:
constructor() {
this.controller = someItemCtrl;
this.templateUrl = 'scripts/somefolder/someitem.html';
this.bindings = {
getBackItems: '='
};
}
I definiert haben getBackItems
auf one more controller
erstellt innerhalb somecomponentname
Komponente wie:
public getSelectedFields: any;
auf Popup schließen Werte getBackItems
zuweisen und es wird sofort zu parent controller
reflektieren, wie es two way binding
ist