AngularJS dependency error
我的应用程序组织如图所示...当我尝试在我的 app.config 模块中注入 $state 时,如第二张图像中所示,我遇到了依赖问题
我收到以下错误:
angular.js:38 未捕获的错误:[$injector:modulerr] http://errors.angularjs.org/1.5.0/$injector/modulerr?p0=app
- 如果我尝试注入 $rootScope,我也会遇到同样的问题
-
只有提供者和常量可以注入配置块。这是为了防止在服务完全配置之前意外实例化服务。查看更多 docs.angularjs.org/guide/module
-
好,谢谢。我对angular很陌生......
您必须在配置函数中注入 $stateProvider,而不是 $state 本身。
- 如果我添加 $stateProvider 那么我不能使用 $state
-
是的,您永远不会在 config 中使用您的服务实例。在 angular.module('app').run(function(){...}); 中使用
-
所以我必须在运行中添加我的拦截器?
-
在这种情况下是的。但是你必须在 Restangular 上而不是在 RestangularProvider angular.module('app').run(function(Restangular){...}); 上做
-
看这个例子,beletsky.net/2013/11/... 如果我定义我的工厂,我不能在 .config 块中推送拦截器
-
对不起我的坚持。但是为什么如果我创建一个工厂 httpInterceptor 并尝试在 .config 中运行以下代码: $httpProvider.responseInterceptors.push(\\'httpInterceptor\\');我在原始问题中遇到相同的错误?
-
因为当你推送这个工厂时,拦截器 $state 还没有初始化。如果你想使用提供者的实例,你应该在 run 函数中而不是在 config 中添加拦截器
-
让我们在聊天中继续这个讨论。