1:简单的登录检查
$stateProvider .state('index', { url: "/", templateUrl: 'views/forwards/intro.html', controller: 'ForwardsIntroCtrl', data: { loginCheck: false } }) .state('account', { url: "/account", templateUrl: 'views/forwards/account.html', controller: 'ForwardsAccountCtrl', data: { loginCheck: true } })
配置参数:loginCheck(这里可以自定义)
$rootScope.$on('$stateChangeStart', function(event, toState, toStateParams) {
console.error(toState, toState.data.loginCheck);
if (!$rootScope.logined && toState.data.loginCheck) {
console.error('not login!');
$location.path('/')
}
});
根据某个rootScope值和loginCheck判断是否登录
2:角色检查
可以参考:http://stackoverflow.com/questions/22537311/angular-ui-router-login-authentication
原理大概是一样的。