I'm using the GoogleApiModule to provide authentication for users, however I don't want to have the clientId stored directly into the angular code what I would like it to retrieve the information from a remote configuration server (using HttpClient
) and provide that configuration to the module during import, kind of what you would get with APP_INITIALIZER
for providers.
I tried using a factory that returns a promise, as well as blocking queries with await
but it does not seem to delay module import as it does with app initialisation (the configuration is empty and I get an error).
Any idea of how to achieve this?
@NgModule({
declarations: [
],
imports: [
BrowserModule,
BrowserAnimationsModule,
AppRoutingModule,
ClickOutsideModule,
OrderModule,
FormsModule,
HttpClientModule,
CommonModule,
BrowserAnimationsModule,
GoogleApiModule.forRoot({
provide: NG_GAPI_CONFIG,
useFactory: gapiConfig,
deps: [HttpClient]
}),
],
providers: [ ],
bootstrap: [AppComponent]
})
export class AppModule {
}
Thanks
PS: I'm using angular 10
question from:
https://stackoverflow.com/questions/65909471/angular-initialise-module-with-configuration-with-remote-http-call 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…