Javascript AngularJS-将提供程序注入module.config
我做错了什么?Javascript AngularJS-将提供程序注入module.config,javascript,angularjs,Javascript,Angularjs,我做错了什么? 根据文档,我应该能够将提供程序注入module.config…但是我得到一个错误-未知提供程序“ 实际上我这里有三个问题… 1) 如何将ab.core.provider注入到ab.core模块的配置中。 2) 如何将相同的提供程序(ab.core.provider)注入到ab模块的配置中。 3) 如果我将同一个提供程序注入到两个模块的配置中,它将是同一个提供程序实例,还是两个不同的实例 谢谢大家! 您需要添加“提供者”后缀,Angular知道这一点,但正如shaunhusain
根据文档,我应该能够将
提供程序
注入module.config
…但是我得到一个错误-未知提供程序“
实际上我这里有三个问题…1) 如何将
ab.core.provider
注入到ab.core
模块的配置中。2) 如何将相同的提供程序(
ab.core.provider
)注入到ab
模块的配置中。3) 如果我将同一个提供程序注入到两个模块的配置中,它将是同一个提供程序实例,还是两个不同的实例 谢谢大家! 您需要添加“提供者”后缀,Angular知道这一点,但正如shaunhusain在评论中所说的:
遵循命名约定,使其看起来很好,
.provider('camelCase',…)
可能重复我刚才投票关闭的Hi,这是一个布局良好的问题,但我认为问题在于前提,答案是你不能像我链接的SO帖子中解释的那样将某些提供者注入配置。@shaunhusain我看到了那篇帖子……但它对我没有帮助,因为我遇到了另一个问题。我没有尝试注入“值”或“服务”,因为这是您链接的问题。很公平,我只是不完全理解代码,但看到了将提供程序注入配置的问题,很高兴您解决了。谢谢,现在它可以工作了,不知怎的,我错过了“后缀”部分:)您没有定义。这是解决办法。在配置状态下,您仍然可以在没有$get筛选的情况下完全访问提供程序方法。
(function () {
"use strict";
angular.module("ab.core", [])
.provider("ab.core.provider", function () {
console.log("ab.core.provider - constructor");
this.$get = function () {
console.log("ab.core.provider - get");
return { value: "test" };
}
})
.config(["ab.core.provider", function (myProvider) { console.log("ab.core - config " + myProvider.value); }])
.run(function () { console.log("ab.core - run"); });
angular.module("ab", ["ab.core"])
.config(["ab.core.provider", function () { console.log("ab - config"); }])
.run(function () { console.log("ab - run"); });
angular.bootstrap(document, ['ab']);
}());
angular.module("ab.core", [])
.provider("ab.core.provider", function () {
})
.config(["ab.core.providerProvider", function(p) {
...
}]
angular.module("ab", ["ab.core"])
.config(["ab.core.providerProvider", function(p) {
...
}]