[英]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
作为依赖项''+ 'Provider
给Provider
,显然不存在这种依赖关系。 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.