AngularJS - 将提供程序注入模块.config
AngularJS - Inject provider to module.config
我做错了什么?
根据文档,我应该能够将provider
注入module.config
......但是我收到一个错误-"未知提供商"
http://jsfiddle.net/g26n3/
(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']);
}());
其实我这里有三个问题...
1) 如何注入ab.core.provider
来配置ab.core
模块。
2) 如何注入相同的提供程序(ab.core.provider
)来配置ab
模块。
3)如果我注入相同的提供程序来配置两个模块,它将是相同的提供程序实例还是两个不同的实例?
谢谢!
您需要添加"提供者"后缀,这就是 Angular 知道的方式,但就像 shaunhusain 在评论中所说的那样,有一些限制:
http://jsfiddle.net/g26n3/1/
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) {
...
}]
遵循命名约定,使其看起来不错,.provider('camelCase', ...)
相关文章:
- 我可以像其他库一样将JointJS作为AngularJS模块注入吗
- 将模块注入控制器AngularJs
- AngularJS在不使用变量的情况下将服务注入模块中,这样就可以缩小它
- JavaScript模块化和依赖注入之间的区别
- JavaFX+Javascript:如何将Java对象注入AMD模块
- $injector:modulerr将自定义模块注入Angular应用程序
- angularjs自定义模块与$http注入
- 如何在angularjs中为每个控制器注入一个独特的模块
- AngularJS - 将提供程序注入模块.config
- AngularJS在应用程序初始化后注入模块
- 在 AngularJS 应用程序中有条件地注入模块
- DevExtreme-错误注入模块
- AngularJS上不断出现注入模块错误
- 只有在需要AngularJS时才注入模块依赖项(如插件)
- AngularJs/ngCordova自定义构建离子注入模块错误
- 如何区分AngularJS中注入模块的名称空间
- 如何在AngularJs中注入模块的两个不同实例
- 如何在AngularJS中正确注入模块
- AngularJS动态注入模块
- 在Angular运行时注入模块