У меня есть два модуля AppModule и lazyLoadModule. где я ленивый загрузки lazyLoadModule из Appmodule. Я хочу поделиться своими провайдерами с лениво загруженным модулем см. . Я создал SharedProviderModule следующим образом и импортировал в AppModule с помощью SharedProviderModule.forRoot ():
import { NgModule, APP_INITIALIZER, ModuleWithProviders } from '@angular/core';
import { CounterService } from './counter.service';
@NgModule({
})
export class SharedProviderModule {
static forRoot(): ModuleWithProviders {
return {
ngModule: SharedProviderModule ,
providers: [ CounterService
{
provide: APP_INITIALIZER,
useFactory: appConfigFactory,
deps: [CounterService],
multi: true
},
]
}
}
}
Согласно справочному провайдеру блога должен быть один экземпляр для обоих модулей, но сейчас для лениво загруженного модуля инициируется новый экземпляр провайдера. Я переопределяю некоторые значения, используя фабричный провайдер в SharedProviderModule, которые не отражаются в лениво загруженном модуле. Это то, что я забыл сделать?