告诉Angs Js忽略一个特定的路线

我已经在Angular中build立了我的路由,并且工作正常:

$locationProvider.html5Mode(true); $routeProvider. when('/', { templateUrl: '/Home/Index' }). when('/User', { templateUrl: '/User/Index' }); 

不过,我现在有一个定位标记作为注销button,将用户redirect到/用户/注销,然后注销将login用户,并将其redirect到login页面。 所以我想要的是angularjs忽略这个特定的路线,并允许它做一个正常的httpredirect。 这似乎是应该很容易,但我一直没能find解决问题的办法。

我知道我可以做一个点击事件,并在click事件中做一个window.location改变,但这似乎是一个非常冒险的方式来做到这一点。

在锚中指定target="_self" ,这样angularjs不会重写URL。 看到这里的讨论: http : //docs.angularjs.org/guide/$location

你也可以使用redirectTo函数:

  .when('/User/Logout', { redirectTo: function(obj,path,search) { window.location.href=path; } })