Ich stolpere mit einigen Konzepten von Angular, insbesondere den Fluss von Variablen und Umfang.Eckiges Eltern Kind mit Service
Ich versuche, eine Variable in einem untergeordneten Controller festzulegen und es an einen übergeordneten Bereich zu übergeben. Betrachten Sie dieses einfache Beispiel:
module.controller('childController', childController);
function childController($scope,$http,$window, hexafy) {
$scope.hex = hexafy.myFunc(17);
}
module.controller('parentController', parentController);
function parentController($scope, hexafy) {
}
module.service('hexafy', function() {
this.myFunc = function (x) {
return x.toString(16);
}
});
Dann meine Aufschlags ist wie folgt:
{{hex}}
<section data-ng-controller="listingsViewController">....</section>
Die Berechnung durch das Kind Controller gehandhabt wird, aber wie Sie kann ich sehen, möchte die Variable an die 'Eltern' übergeben. Ich habe über den "Elternbereich" gelesen, aber ich verstehe, dass dies keine Best Practice ist, also versuche ich, einen Dienst zu verwenden. Wo gehe ich falsch?
Ich lug das $ parentScope wird nicht empfohlen, da es Problem zu einem späteren Zeitpunkt verursachen kann. Ich bin bereit zu versuchen, wie Sie oben vorgeschlagen haben, aber ich bin auch neugierig zu sehen, wie der Dienst funktioniert. Ich kann jedoch keine Beispiele finden und in Kreisen weitergehen –
@AlanA Ich habe den Code mit Service sowie – whyyie
@whyyie aktualisiert Sie können den Wert von dem Dienst erhalten, ohne einen Klick zu machen oder '$ emit' zu verwenden, in Ihrem Code, wenn Sie Ihre Funktion in einen Ausdruck '{{clickHere()}}' in der Ansicht setzen, wird es ausgeführt, wenn es sich ändert. –