Угловой маршрут не входит в функцию разрешения
Я добавляю аутентификацию маршрута в мое угловое приложение.
По какой-то причине, когда я пытаюсь перейти к logentries
вид, я не могу получить код в resolve
Функция для выполнения.
Я добавил точку останова, используя инструменты разработчика Chrome, но это не ударил.
Однако представление действительно загружается.
Я думал, что решимость будет достигнута до того, как будет создан экземпляр контроллера и отображено представление.
Почему не так?
(function () {
'use strict';
angular.module('app')
.config(appConfig)
.run(routeAuthentication);
routeAuthentication.$inject = ['$rootScope', '$location'];
function routeAuthentication($rootScope, $location) {
$rootScope.$on('$routeChangeError', function (event, current, previous, rejection) {
if (rejection === 'Not Authenticated') {
console.log('Not Authenticated for Route');
$location.path('/');
}
});
}
appConfig.$inject = ['$routeProvider'];
function appConfig($routeProvider) {
$routeProvider
.when("/logentries", {
templateUrl: "app/views/logEntries.html",
controller: "logEntries",
resolve: function ($q, $location) {
// Code not entering here as far as I can tell.
var deferred = $q.defer();
deferred.resolve();
if (true) { // TODO - use authenticationServce
$location.path('/login');
}
return deferred.promise;
}
})
// other routes
};
})();