我想根据某种条件将提供者添加到我的提供者数组中。添加这种方式不起作用
const tempProviders: Array<any> = [
abcService,
xyzService];
if(IE) {
tempProviders.push({provide: EVENT_MANAGER_PLUGINS,
useClass: IeInputEventManagerService,
deps: [DOCUMENT],
multi: true
});
}
@NgModule -> continues here
以上操作无效。将新提供程序推送到提供程序阵列的正确方法是什么?
答案 0 :(得分:0)
创建一个函数,并根据数组分配新对象。
const tempProviders: Array<any> = [
abcService,
xyzService,
checkService(),
];
function checkService(){
if(IE) {
return {provide: EVENT_MANAGER_PLUGINS,
useClass: IeInputEventManagerService,
deps: [DOCUMENT],
multi: true,
};
}
}