mam kątowym app JS z backend Sails JS, a wewnątrz trasach (w app.js) Mam:
.state('app.detail', {
url: "/detail",
views: {
'menuContent' :{
templateUrl: "templates/detail.html",
controller: 'UserUpdateCtrl',
resolve: {
auth: ["$q", "userData", function($q, userData) {
var userInfo = userData.getUserInfo();
if (userInfo) {
return $q.when(userInfo);
} else {
return $q.reject({ authenticated: false });
}
}]
},
}
}
})
(to obserwuje this guide)
teraz na tym samym pliku, mam $ routeChangeError:
.run(function($rootScope) {
$rootScope.$on("$routeChangeError", function(event, current, previous, eventObj) {
if (eventObj.authenticated === false) {
$location.path("/login");
}
});
Kiedy debugowanie na chrome, widzę, że funkcja jest zdefiniowana, ale nie wywołana.
Czego mi tu brakuje?
może nie masz < ui-view >? –
Na pewno chcesz '$ stateChangeError' ... – ivarni
Ok to wywołanie' $ stateChangeError' ale zmienna 'eventObj.authenticated' jest niezdefiniowana (eventObj:' Object {nazwa: "", url: "^", widoki: null , abstract: true} ') – Asaf