在我的应用程序中,我希望在刷新他正在查看的页面时将用户重定向到登录页面。我怎么能在AngularJS中做到这一点?
答案 0 :(得分:0)
您可以收听事件$locationChangeStarted,如果用户未登录,则会阻止默认行为(事件对象的preventDefault()
方法)并将$location更改为您想要的任何页面。
这是一个伪编码示例:
myModule.run(function($locaiton, $rootScope, MyLoginService) {
$rootScope.on('$locationChangeStarted', function(event) {
if (!MyLoginService.isAuthentificated() && event.oldUrl !== 'myloginpage') {
event.preventDefault();
$location.path('/myloginpage');
}
});
});