我的路线设置,像这样:角获取路由参数开始
app.config(function($routeProvider) {
$routeProvider
//login
.when("/", {
templateUrl : "framework/views/login.html",
controller : "LoginCtrl",
title: "Login",
authenticate: false
})
//dashboard
.when("/dashboard", {
templateUrl : "framework/views/dashboard.html",
controller : "DashboardCtrl",
title: "Dashboard",
authenticate: true
});
});
现在我想如果authenticate
设置为true
路线上的重定向位置的变化,但一个session variable
不true
。
例如:
$rootScope.$on("$locationChangeStart", function(event, newURL, oldURL){
if (toState.authenticate && $window.sessionStorage.isLoggedIn) {
$location.path("/");
}
});
这工作,如果我用$routeChangeStart
代替,但我简要地看的下一个路由重定向之前。位置改变似乎停止了,但我不能解决如何访问路由参数(即验证参数)。
我该怎么做?或者有更好的方法吗?
Imo在这种情况下更好使用拦截器https://docs.angularjs.org/api/ng/service/$http – Whisher 2014-09-12 12:59:32
@Whisher有趣。你能提供一个范例答案吗? – Coop 2014-09-12 13:04:00
在.run(function(){// here})中添加此博客的app.js – 2014-09-12 13:34:58