如何将自定义服务直接附加到 angular ng 模块

How to append customized service into angular ng module directly

我尝试直接将自定义服务添加到 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

此时我真的很困惑...我哪里做错了?

将您的定义更改为:

'use strict';
angular
    .module("ng")
    .service('getAQueryParameterByName', [function(){
        console.log("getAQueryParameterByName service active");
        this.getParameter = function(name){
            console.log("getParameter!");
        }
    }]);

不过,我不建议扩展 ng 模块。就模块化架构而言,这应该被视为第三方。