gpt4 book ai didi

javascript - 如何在 AngularJS $rootScope 事件监听器中应用状态转换?

转载 作者:行者123 更新时间:2023-11-28 06:11:43 25 4
gpt4 key购买 nike

我目前在使用 angular-http-auth 时遇到问题处理来自 event:auth-loginRequired 事件的状态转换的库。我正在使用angular-ui-router对于我的路由系统。

无论如何,这里是库中发出事件的一些代码:

case 401:
var deferred = $q.defer();
httpBuffer.append(config, deferred);
$rootScope.$broadcast('event:auth-loginRequired', rejection);
return deferred.promise;

我正在使用 myApp.run 中的这些代码来捕获事件

$rootScope.$on('event:auth-loginRequired', function(){
console.log('Token Invalid / Expired');
$state.transitionTo('login');
});

我能够在控制台中获取“ token 无效/过期”。然而,状态转换根本不起作用,我的控制台上也没有收到任何错误。我尝试过使用 $location.path('/login'),但它也不起作用。

有人可以帮我解决问题吗?非常感谢任何形式的帮助。谢谢!

最佳答案

[更新 - 已解决]

抱歉,我想我已经找到了解决方案这不是因为转换在 Angular 事件中不起作用,而是我自己太愚蠢了如果浏览器的 cookie 中仍然有 token ,则每当应用程序尝试重定向到登录状态(我试图在应用程序捕获事件时重定向)时,都会有一个 event.preventDefault() 处理。我很抱歉问这个问题。

再次感谢您对我的帮助!

关于javascript - 如何在 AngularJS $rootScope 事件监听器中应用状态转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36327144/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com