У меня есть контроллер, которому необходимо получить доступ к службе. Если я просто добавлю службу в качестве параметра функции-конструктора моего контроллера, он будет работать нормально, но если я попытаюсь аннотировать параметры с помощью $ injection, чтобы у меня не возникало проблем с минимизацией javascript, я получаю следующее Исключение: «Невозможно прочитать свойство« Пользователь »неопределенного»
Все работает нормально, но я не понимаю, откуда исходит исключение.
Код для службы является:
var myAppServices = angular.module('myApp.services', []);
myAppServices.factory('User', function(){
var user = {
name:"anonymous",
id: -1,
authorized:false
};
return user;
});
И контроллер выглядит следующим образом:
function MainController($rootScope, $location, User){
$rootScope.$on("$routeChangeStart", function (event, current, previous){
console.log(User);
if(User.authorized === false && current.templateUrl !== 'partials/partial1.html'){
console.log("returning false")
$location.path('/view1');
return false;
}
});
}
MainController.$inject['$rootScope', '$location', 'User'];
Исключение брошено на последней строке кода выше, где $ впрыснуть аннотацию называется ,
Ups! Мне действительно нужно больше спать ;-) –