简体   繁体   English

Angular Js $ injector:unpr错误

[英]Angular Js $injector:unpr error

I am new to angular and I was trying to implement a custom service. 我是angular的新手,我正在尝试实施自定义服务。 Code is below: 代码如下:

app.js app.js

angular.module('hrg', [
  'ui.router',
  'ui.bootstrap',
  'ngTouch',
  'ngAnimate',
  'ngCookies',
  'hrg.home'
])

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

home.js home.js

angular.module('hrg.home', ['ui.router'])

.controller('HomeController', ['$scope','$http','$cookies','$state','consts', 'userService',
  function($scope, $http, $cookies, $state, consts, userService) {
  //data
}])

index.html 的index.html

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

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

What is it that I am doing wrong? 我做错了什么?

You have put a '' inside userService inline DI array, which ask for '' that is culprit of your issue. 您已在userService内联DI数组中放置了'' ,要求输入'' ,这是问题的根源。 Because when you inject userService dependency inside controller, angular injector goes for creating an instance of userService service. 因为当您在控制器内部注入userService依赖项时,角度注入器会用于创建userService服务的实例。

When resolving dependency from userService DI array, it passes '' to injector , then first it creates provider name by concatenate it with Provider suffix like ''+ 'Provider with result to Provider as dependency name & obviously there is no such dependency present. 当从userService DI数组解析依赖项时,它将''传递给injector ,然后首先通过将其与Provider后缀(如''+ 'Provider连接起来来创建提供者名称,结果将Provider作为依赖项''+ 'ProviderProvider ,显然不存在这种依赖关系。 So angular is throwing an exception $injector/unpr? 所以角度抛出$injector/unpr?异常$injector/unpr? means Injector unknown provider 意味着Injector unknown provider

Change below service code 更改以下服务代码

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

to

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM