Как сделать много environments подтягивающиеся с сервера?

Идея: есть несколько environments и будут новые которые добавляются, надо чтобы с Azure можно было менять свойство конкретного environment и оно подтягивалось сразу в проект в этот environment. Но как это сделать если свойства environment в angular.json содержат еще дополнительные полезные надстройки (AOT, optimization, ...)?

Проблема: каждый раз когда надо добавить новое окружение надо идти создавать новый environment.name.ts, потом добавить его в angular.json.

Вот что посоветовали посмотреть, но вопрос с изменениями в angular.json и environment.name.ts это не решает.

P.S. Бекенд на .Net


Ответы (1 шт):

Автор решения: Yugofx

Самый простой вариант - это запросить environment до бутстрапа приложения и записать их куда-нибудь.

@NgModule({
    // bootstrap: [AppComponent]
    entryComponents: [AppComponent]
})
export class AppModule implements DoBootstrap {
    ngDoBootstrap(app: ApplicationRef) {
        fetch(envUrl)
            .then(response => response.json())
            .then(vars => environment.dynamicVars = vars);
            .then(() => app.bootstrap(AppComponent))
            .catch(console.error)
    }
}
→ Ссылка