【发布时间】:2015-05-15 15:15:33
【问题描述】:
请注意,这不是重复的:How to inject module and make it accesible to entrie angular app
我有一个模块(app.config),我想将它注入到我的整个应用程序中。
该模块需要在注入myApp的所有其他模块和子模块(模块内的模块)中可访问
例如,我的应用如下所示:
angular.module('myApp', [
'app.config',
'module#1',
'module#2',
'module#3',
'module#4'
])
.config...
//////////////////////////////
这里是app.config
angular.module('app.config', []).
constant('NAME1', 'Name1').
constant('NAME2', 'Name2');
////////////////////
我希望 'app.config' 以这样的方式注入,它应该可以在 module#500 中访问,这不是 'myApp' 的直接依赖,而是 module#1 的依赖 - 这反过来又是myApp.
module#1是这样定义的(如图,module#500是module#1的依赖):
angular.module('module#1', [
'module#500',
'module#501',
'module#502',
...
]);
这是我的问题:
angular.module('module#500', []).
service('serviceOne', serviceOne);
function ServiceOne($http, NAME1) {
var service = {
getMyProfile: function(){return $http.get('api/' + NAME1);}
};
return service;
}
问题 - 我收到错误 -> Uncaught Error: [$injector:unpr] Unknown provider: NAME1Provider <-NAME1 <- serviceOne 但我以为我将它注入到整个应用程序中???
我不想将module#500 直接添加为'myApp' 的依赖项 我不想将module#500 作为module#1 的依赖项。我想离开 module#1 作为 myApp 的依赖项
我也不想将app.config 单独注入每个模块。还有其他解决方案吗?
【问题讨论】:
-
您可能无法解决依赖关系错误。 Not NAME 未定义...
-
对不起@Vishwanath - 我不确定我明白你在说什么。 “Not Name is undefined”?
-
您是否收到错误“名称未定义”?
-
确切的错误是:
Uncaught Error: [$injector:unpr] Unknown provider: NAME1Provider <-NAME1 <- serviceOne
标签: angularjs dependency-injection