angular アプリケーションでtypescript マップを使用(testMap: Map<string, Array<string>> = new Map<string, Array<string>>();)
していますが、「ng serve」を使用して実行するとすべてが機能します。しかし、「ng serve --aot」を使用して実行すると、マップが機能しません。例外は発生しませんが、コードをデバッグするとマップが null になります。これが既知の問題であるかどうか、およびこれに対する回避策があるかどうかを知りたいです。ご協力ありがとうございました。
//myLibrary
export class MyModule {
static forRoot(config: MyConfig ): ModuleWithProviders {
return {
ngModule: MyModule,
providers: [
{provide: MY_CONFIG, useValue: config}
]
}
}
}
export class MyConfig {
myArray? : string[];
myMap?: Map<string, string[]>;
}
// ユーザー アプリケーション
export const testMap: Map<string, string[]> = new Map<string, string[]>();
testMap.set("key1", ["value1", "value2"]);
testMap.set("key2", ["value3", "value4"]);
@NgModule({
declarations: [
// some code
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
HttpClientModule,
MyModule.forRoot({
myArray: ["1234"],
myMap: testMap,
}
),
],
providers: [
],
bootstrap: [AppComponent]
})
export class AppModule {
}