ich den AngularJS $rootScope
Objekt verwenden einige globalen Konstanten zu machen, die beide zu Controllern und Ansichten zugänglich sein müssen:Wie gegen die globalen Variablen in ng-Schalter vergleichen
var app = angular.module('myApp', []);
app.run(function ($rootScope) {
$rootScope.myConstant = 2;
});
Wenn ich ein globalen zu machen versuchen, Wert in einer Ansicht, es funktioniert einwandfrei:
{{myConstant}}
Ebenso, wenn ich den globalen Wert in einem ng-if
Zustand Referenz funktioniert es auch:
<span ng-if="someValue == myConstant">Conditional content</span>.
Wenn jedoch versucht wird, denselben Wert für den Vergleich innerhalb eines ng-switch
Blocks zu verwenden, wird der Wert nie als wahr ausgewertet. This JSFiddle zeigt meinen Versuch, das funktioniert zu bekommen. Ich habe auch versucht, explizit auf den konstanten Wert als Mitglied von $rootScope
und als Ausdruck (innerhalb von geschweiften Klammern) zu verweisen, aber nichts funktioniert.
Irgendwelche Ideen, was ich falsch mache?
Danke,
Tim
Es sieht nicht so aus, als ob es mit der ng-switch Direktive funktioniert. Andere haben ähnliche Kommentare abgegeben. Hier ist ein weiteres Beispiel, das ich gefunden habe, das das Problem hervorhebt: http://jsfiddle.net/sfqGB/ –
Es scheint, dass Sie ab jetzt kein dynamisches 'ng-switch-when' haben können. Alternativ können Sie 'ngIf' verwenden. – AlwaysALearner