Angular Js $injector:unpr error

Angular Js $injector:unpr error

本文关键字:unpr error injector Js Angular      更新时间:2023-09-26

我是 angular 的新手,我正在尝试实现一个自定义服务。代码如下:

应用.js

angular.module('hrg', [
  'ui.router',
  'ui.bootstrap',
  'ngTouch',
  'ngAnimate',
  'ngCookies',
  'hrg.home'
])
.service('userService', ['', function(){
//data
}])

首页.js

angular.module('hrg.home', ['ui.router'])
.controller('HomeController', ['$scope','$http','$cookies','$state','consts', 'userService',
  function($scope, $http, $cookies, $state, consts, userService) {
  //data
}])

索引.html

<script src="app.js"></script>
<script src="components/home/home.js"></script>

错误是:[$injector:unpr] http://errors.angularjs.org/1.5.0/$injector/unpr?p0=userServiceProvider%20%3C-%20userService%20%3C-%20HomeController

我做错了什么?

您已在

内联 DI 数组中放置了一个'' userService该数组询问''这是您问题的罪魁祸首。因为当您在控制器中注入userService依赖项时,角度注入器会用于创建userService服务的实例。

当从 DI 数组解析依赖关系时userService它会''传递给injector,然后首先它通过将它与Provider后缀(如 ''+ 'Provider 与结果连接起来来创建提供程序名称,Provider作为依赖项名称,显然不存在这样的依赖关系。所以角度抛出了一个异常$injector/unpr?这意味着Injector unknown provider

更改以下服务代码

                    //VVVVVVV//unwanted '' blank dependency
.service('userService', ['', function(){
   //data
}])

.service('userService', [function(){ //removed `''` dependency
   //data
}])