Hi Unten ist der Code für einen Controller in Angular, an dem ich arbeite. Ich verweise auf svcSPoint, eine Fabrik, die für das Modul registriert ist. Was ich nicht vorstellen kann, ist das. Ich bin in der Lage, auf svcSpoint zuzugreifen ist im Konstruktor, wie die ng-Annotate die Fabrik injiziert. Allerdings kann ich in der Funktion SelectChanged() nicht auf den SvcSPoint zugreifen.angularjs - Wert zwischen den Fabriken teilen
Was ich versuche zu erreichen ist, den Wert einer Fabrik zu setzen, wenn ein Ereignis in DOM ausgelöst wird. Wie kann ich einen Wert in global erfassen, so dass ich darauf in einer Reihe von Controllern und Fabriken zugreifen kann.
'use strict';
class NavbarController {
//start-non-standard
menu = [{
'title': 'Home',
'state': 'main'
}];
isCollapsed = true;
//end-non-standard
constructor(Auth, svcSPoint) {
this.isLoggedIn = Auth.isLoggedIn;
this.isAdmin = Auth.isAdmin;
this.currentuser = svcSPoint.currentuser;
this.scopeSelect = 'NAL';
this.scopeSelects = ['NAL', 'USL', 'CAD'];
svcSPoint.scopeSelection = this.scopeSelect;
this.svcSPoint = svcSPoint;
}
SelectChanged() {
svcSPoint.scopeSelection = this.scopeSelect;
}
}
angular.module('nalAngularDashApp')
.controller('NavbarController', NavbarController);