AngularJS location.path无法正常工作

时间:2014-10-25 06:23:12

标签: angularjs

已多次发布,但我仍然没有运气:

$rootScope.$on("$stateChangeError", function(event, toState, toParams, fromState, fromParams, error) {
  if (error && !error.authenticated) {
    $location.path('/login');
    console.log('new path: ' + $location.path());
  }
});

我的应用实际上不会转到/login,但console.log将返回值/login。我已经尝试了$apply技巧而没有在其他线程中提到的运气,但这是一个非常简单的应用程序,没有第三方集成,其中angular需要通过$apply获得一些额外帮助。在$location.path()的上下文中使用$rootScope,或者在监听$stateChangeError时,是否需要{{1}}的变体?

我确信这很简单,我只是没有看到它。

1 个答案:

答案 0 :(得分:1)

我没有提到我正在使用ui.router,所以切换到$state.go('login')似乎可以使它工作。下次我会确保发布一个plunker来获得可重现的东西,也许可以解决我自己的问题:)