如何在 Angularjs 中的 app.config 中注入多个提供程序

How to inject multiple providers in app.config in Angularjs

我的项目中有多个提供者,每个提供者都有自己的构造函数,我试图将所有这些提供者注入到主 app.config 中。 我尝试了以下场景,但它不起作用

尝试将所有提供程序添加到数组本身中,但它不起作用

app.config([
'EquityValueProvider', function (EquityValueProvider) {
EquityValueProvider.setAPIURL('https://localhost:44333/api/equityvalue');
},
'HeatMapServiceProvider', function (HeatMapServiceProvider) {
HeatMapServiceProvider.setAPIURL('https://localhost:44333/api/equityvalue');
},
'RetailerProvider', function (RetailerProvider) {
RetailerProvider.setAPIURL('https://localhost:44333/api/equityvalue');
}]);

但下面的代码有效(多个配置)

 app.config([
'EquityValueProvider', function (EquityValueProvider) {
EquityValueProvider.setAPIURL('https://localhost:44333/api/equityvalue');
 }])
.config([
'HeatMapServiceProvider', function (HeatMapServiceProvider) {
HeatMapServiceProvider.setAPIURL('https://localhost:44333/api/equityvalue');
}])
.config([
'RetailerProvider', function (RetailerProvider) {
RetailerProvider.setAPIURL('https://localhost:44333/api/equityvalue');
}]);

但是我在这里添加了多个配置,而不是我可以做一个配置并添加所有提供者。

方法如下:

app.config([
'EquityValueProvider'
'HeatMapServiceProvider',
'RetailerProvider',
 function (EquityValueProvider, HeatMapServiceProvider, RetailerProvider) {
   EquityValueProvider.setAPIURL('https://localhost:44333/api/equityvalue');
   HeatMapServiceProvider.setAPIURL('https://localhost:44333/api/equityvalue');
   RetailerProvider.setAPIURL('https://localhost:44333/api/equityvalue');
}]);

您可以根据需要添加任意数量的提供商。

为配置函数提供三个参数:

app.config([
    'EquityValueProvider','HeatMapServiceProvider','RetailerProvider',   
    function (EquityValueProvider,HeatMapServiceProvider,RetailerProvider) {       
        EquityValueProvider.setAPIURL('https://localhost:44333/api/equityvalue');
        HeatMapServiceProvider.setAPIURL('https://localhost:44333/api/equityvalue');
        RetailerProvider.setAPIURL('https://localhost:44333/api/equityvalue');
    }
]);

有关详细信息,请参阅 AngularJS Developer Guide - Dependency Injection