Я пытаюсь использовать константы в моей маршрутизации для обработки ACL каждого контроллера. Но в config
константы не доступны, и инъекция кажется сломанной. Тем не менее, я могу получить доступ к значению со всего мира в приложении.Использование констант в маршрутизации AngularJS
var app = angular.module('myproject', [
'ui.router'
]);
app.constant('USER_ROLES', {
all: '*',
admin: 'admin',
role1: 'role1',
role2: 'role2'
});
app.config(['$stateProvider', '$urlRouterProvider',
function ($stateProvider, $urlRouterProvider, USER_ROLES) {
console.log("Value: ", USER_ROLES);
});
Этот код производит этот вывод в консоль:
Value: undefined
Может кто-нибудь мне помочь? Благодаря!
Вам не хватает ']' где-то – devqon
Я считаю, что константы устанавливаются после выполнения, поэтому, когда приложение находится в конфигурации, константы еще не установлены. я не уверен в этом, но я считаю, что они доступны после того, как ваша платформа готова. –
Спасибо @devqon Я только что заметил это, я обрезал свой фрагмент, чтобы было легче понять. –