我尝试直接在ng模块中添加自定义服务
'use strict';
angular
.module("ng")
.service('getAQueryParameterByName', ['', function(){
console.log("getAQueryParameterByName service active");
this.getParameter = function(name){
console.log("getParameter!");
}
}]);
因此,当我尝试通过执行getAQueryParameterByName.getParameter(var)
来运行服务时,我遇到了错误
ReferenceError: getAQueryParameterByName is not defined
通常这个错误是因为我没有注入服务,但是,我想,因为我将自定义服务直接注入模块,因此,我真的不需要再次注入控制器?但是,我试图再次将服务添加到控制器中,并且我收到
的错误 Error: [$injector:unpr] Unknown provider: Provider <- <- getAQueryParameterByName
此时我真的很困惑......我哪里做错了?
答案 0 :(得分:1)
将您的定义更改为:
'use strict';
angular
.module("ng")
.service('getAQueryParameterByName', [function(){
console.log("getAQueryParameterByName service active");
this.getParameter = function(name){
console.log("getParameter!");
}
}]);
虽然,我不建议扩展ng模块。就模块化架构而言,这应被视为第三方。