我有一个很棒的应用,直到我决定重构代码并使用Gulp进行我的项目。这是我得到的错误:
Error: [$injector:unpr] Unknown provider: _Provider <- _ <- utilsFactory <- storageService <- httpRequestInterceptor <- $http <- $templateFactory <- $view <- $state
由于我不确定如何阅读此错误,如果它们都有问题,或者它们只是其中之一,这里是我启动应用程序时使用其中一些提供程序的两个地方:
app.run(function($rootScope, $state, storageService, modalsFactory, appFactory, _) { ... }
和
angular.module("mediaControl").controller("loginCtrl", function ($state, $translate, authService, utilsFactory, appFactory, storageService) { ... }
在我的index.html文件中,我有:
<!-- inject:js -->
<script src="src/mediaControl.js"></script>
...
<script src="src/login/providers/httpRequestInterceptor.service.js"></script>
...
<script src="src/common/providers/utils.factory.js"></script>
<script src="src/common/providers/storage.service.js"></script>
...
<script src="src/login/login.controller.js"></script>
...
<!-- endinject -->
我检查/做了什么:
我阅读了文档和一些SO问题,但考虑到我的应用程序在重构之前工作(包括重新组织我的文件结构,重命名文件,并开始重写),我没有看到任何我会做错的事情。使用ES6标准的代码)。关于这里可能出现什么问题的任何想法?
答案 0 :(得分:1)
正如@shaunhusain所注意到的那样,lodash提供程序在我的index.html中丢失了。我修复了我的Gulpfile,以便注入文件,并且它可以正常工作。