登录后AngularJS ui-router重定向
发布时间:2020-12-17 07:08:28 所属栏目:安全 来源:网络整理
导读:我有一个使用AngularJS和ui-router的项目.除了从登录屏幕重定向到第一次加载时的预览状态,一切正常. 默认状态为home – http://test/#/ 例如,如果用户未登录 – http://test/#/test/1000/details进入登录页面(应该这样做) 然后在用户登录后,系统进入默认状态
我有一个使用AngularJS和ui-router的项目.除了从登录屏幕重定向到第一次加载时的预览状态,一切正常.
默认状态为home – http://test/#/ 例如,如果用户未登录 – http://test/#/test/1000/details进入登录页面(应该这样做) 然后在用户登录后,系统进入默认状态“home – http://test/#/”,但我想转到http://test/#/requests/1000/details 如何在登录后保存“http://test/#/requests/1000/details或stateName”以重定向? 我尝试使用$stateChangeSuccess来保存$rootscope中的状态日志,但第一个(http://test/#/requests/1000/details)永远不会被保存. 任何想法如何处理这个? 谢谢. 解决方法
您可以在main-app的run方法中为$state添加’previous’属性.
这就是我解决问题的方法: // add ui-router variables to $rootScope. Comes handy in many cases,for example setting page title angular.module('app').run(['$rootScope','$state','$stateParams',addUIRouterVars]); function addUIRouterVars($rootScope,$state,$stateParams) { $rootScope.$state = $state; $rootScope.$stateParams = $stateParams; // add previous state property $rootScope.$on('$stateChangeSuccess',function (event,toState,toParams,fromState) { $state.previous = fromState; }); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容