Asp.net 用户界面路由器&x27;s在stateChangeStar上只发射一次
我设置了App.run方法,如下所示:Asp.net 用户界面路由器&x27;s在stateChangeStar上只发射一次,asp.net,angularjs,Asp.net,Angularjs,我设置了App.run方法,如下所示: $rootScope.AuthBag = { Authenticated: false, User: "", Roles:[] }; $rootScope.$on('$stateChangeStart', function (event, toState, toParams, fromState, fromParams) { if (toState.authenticate && ($rootScope.AuthBag.
$rootScope.AuthBag = { Authenticated: false, User: "", Roles:[] };
$rootScope.$on('$stateChangeStart', function (event, toState, toParams, fromState, fromParams) {
if (toState.authenticate && ($rootScope.AuthBag.Authenticated === false)) {
$rootScope.returnToState = toState.url;
$rootScope.returnToStateParams = toParams.Id;
$location.path('/Site/LogOn');
}
});
但这只能在第一次加载时工作一次。我国是:
$urlRouterProvider.otherwise("/Site/Movies");
.state('site.movies', {
url: "/Movies",
templateUrl: "/Views/Site/movies.html",
controller: 'moviesController',
authenticate: true
})
我不确定这是否会给未来带来麻烦,但:
window.location = "/Site/LogOn";
解决了我的问题