使用Angularjs和UI-Router,尝试每次状态更改时运行一个函数
$rootScope.$on('$stateChangeStart',
function(toState){
if(toState !== 'login')
UsersService.redirect();
})
我把它放在.run()中,每次路由更改时我都可以成功注销到State。但是,我似乎无法找到具有我们要去的州名称的财产。如果有人能告诉我在哪里找到它,我想我应该保持良好状态。
答案 0 :(得分:20)
结束了这个,它做了我想要的。
$rootScope.$on('$stateChangeStart',
function(event, toState, toParams, fromState, fromParams){
if(toState.name !== 'login' && !UsersService.getCurrentUser()) {
event.preventDefault();
$state.go('login');
}
});