Angularjs 注入$state(ui路由器)会导致循环依赖

Angularjs 注入$state(ui路由器)会导致循环依赖,angularjs,Angularjs,当我把$state放在那里时,我得到了这个错误…我如何修复它 我想使用$state导航到另一个页面,但我不知道如何导航?有什么建议吗?是否有其他方法将用户导航到其他页面 app.factory('mainAuthInterceptorService', ['$q','$state', '$injector', '$location', 'localStorageService', function ($q,$state, $injector, $location, localStorageSe

当我把$state放在那里时,我得到了这个错误…我如何修复它

我想使用$state导航到另一个页面,但我不知道如何导航?有什么建议吗?是否有其他方法将用户导航到其他页面

 app.factory('mainAuthInterceptorService', ['$q','$state', '$injector', '$location', 'localStorageService', function ($q,$state, $injector, $location, localStorageService) {....}
我在用这个

 authService.logOut();

现在我需要将用户重定向到另一个页面…

一个简单的修复方法是使用$injector服务获取对$state服务的引用,如下所示:

    app.factory('mainAuthInterceptorService', ['$q', '$injector', '$location', 'localStorageService',
      function($q, $injector, $location, localStorageService) {
        var $state = $injector.get('$state'); // inject state manually

        ... // your interceptor logic
      }
然后可以像往常一样使用$state对象


另一个用户提出了一个类似的问题,给出了一个很好的答案,深入地解释了这个问题:

是否也将$state注入
localStorageService
<代码>身份验证服务未显示在控制器中。