Привет всем, у меня возникла ситуация при сборке для производства в angular, я реализовал функциональный модуль, который должен быть настроен на основе среды, и есть службы, которые должны быть предоставлены на уровне модуля root, когда я хочу использовать упомянутый функциональный модуль. Теперь я застрял с неспособностью предоставить услугу в зависимости от условий, которые я пробовал
environment.local.ts
export const environment = {
production: false,
baseUrl: '',
customerName: '',
service1 : undefined,
service2 : undefined,
service3 : undefined,
isSecured: false
};
environment.prod.ts
export const environment = {
production: true,
baseUrl: '',
customerName: '',
service1 : Service1,
service2 : Service2,
service3 : Service3,
isSecured: true
};
app.module.ts
/*imports all in place*/
let dynamicModules = [];
if(environment.isSecured){
dynamicModules.push(FeatureModule);
//tried this for providers(services) in local
}
@NgModule({
declarations: [
AppComponent,
],
imports: [
/*other module imports*/
...securityModules
],
providers: [
{provide: 'Service1', useClass: environment.service1},
{provide: 'Service2', useClass: environment.service2},
{provide: 'Service3', useClass: environment.service3},
bootstrap: [AppComponent],
})
export class AppModule { }
Это работало локально, когда я использовал оператор распространения, но не удалось в сборке, и поэтому я попытался предоставить услуги из файла среды.
Примечание : я видел примеры, но все, что я нашел, это упоминание услуг, предоставляемых либо в Service1, либо в Service2, я не ищу такой пример, я хочу использовать Service1 в prod, а не в local. Заранее спасибо.