was ist der beste Weg, um das folgende Szenario vor:Angular Ereignisänderungsdaten emittieren
In einer Komponente Ich habe eine Funktion, die wie so einen Array baut:
var arr = ['a','b'];
In der übergeordneten Steuerung, I Ich möchte dieses Array bei Bedarf ändern können. Ich dachte, dass ich Ereignisse dafür verwenden könnte: In PHP (mit Laravel) kann ich durch Referenz eine Variable aufrufen, wenn ich auf dieses Ereignis höre und dadurch, wenn ich die Variable im listen
Block verändere, wird die ursprüngliche Variable aktualisiert.
In eckig, habe ich versucht zu $emit
ein Event auf dem rootScope und hören auf dieses Ereignis auf der übergeordneten Steuerung:
// directive controller
$rootScope.$emit('$genericColumns', arr)
// parent controller
$rootScope.$on('$genericColumns', function($event, arr) {
arr = [];
return arr;
});
Aber dies zu tun, nicht die ursprüngliche arr
Variable nicht verändert.
Was ist der beste Weg, dies zu erreichen? Wie kann ich eine Variable im Bereich der Kind-Direktive ändern, wenn sie benötigt wird?
hören Sie es auf '$ scope' und nicht auf' $ rootscope', verwenden Sie '$ scope. $ On' – harishr
dies würde die ursprüngliche Variable ändern? – Filip
das gleiche Ergebnis .. – Filip