我正在使用JWT登录和angularjs,我想看看我是否可以保存会话,并且从我的app.js验证并且如果你的会话有效,它会在某种程度上退出$ state属性在显示视图之前进行评估?
这样的事情:
.state('dashboard.notifications',{
templateUrl:'views/ui-elements/notifications.html',
url:'/notifications'
session: if(session = true){
$state.go('notifications');}
else{$state.go('auth');}}
})
答案 0 :(得分:1)
您可以使用$stateChangeStart
或$stateChangeSuccess
事件来执行此操作。例如:
$rootScope.$on('$stateChangeStart', function(e, toState, toParams, fromState, fromParams) {
if(fromState.name=='dashboardNotification' && $rootScope.session != true) {
$state.go('auth');
e.preventDefault();
}
});