genannt Ich habe eine Angular JS App mit einem Back-End-Sails JS, und innerhalb der Routen (in app.js) Ich habe:
.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 });
}
}]
},
}
}
})
(diese folgt this guide)
nun auf der gleichen Datei haben, ich die $ routeChangeError:
.run(function($rootScope) {
$rootScope.$on("$routeChangeError", function(event, current, previous, eventObj) {
if (eventObj.authenticated === false) {
$location.path("/login");
}
});
Wenn Debugging auf Chrome, sehe ich, dass die Funktion definiert ist, aber nicht aufgerufen.
Was fehlt mir hier?
vielleicht haben Sie nicht ? –
Ziemlich sicher, Sie wollen '$ stateChangeError' ... – ivarni
Ok, es ruft' $ stateChangeError' aber die 'eventObj.authenticated' var ist undefined (eventObj:' Objekt {name: "", url: "^", Ansichten: null , abstract: true} ') – Asaf