我有一个角度的应用程序。我正在使用ui-router来管理我的状态。我需要调用一个通用API来检查用户是否被允许查看网页。是否有一个可以调用API的通用位置,然后才能进入用户请求的状态?Angular - 在加载视图之前如何检查用户是否被允许?
在我目前的实施中,视图部分显示,然后重新路由发生。
//app.js
$rootScope.$on('$stateChangeSuccess', function(evt, toState) {
if(toState.name === 'login' || toState.name === 'payment')
return;
userService.isBillingCleared().then(function() {
//redirect to toState
}, function() {
$state.go('payment');
});
});
我该如何预防?
也许使用'$ routeChangeStart'而不是'$ stateChangeSuccess'可以帮助 – Naigel