После обновления до angular 9 мой провайдер возвращает ноль.
@NgModule({
providers: [
[...],
{
provide: LOCALE_ID,
deps: [TenantService], // some service handling global settings
useFactory: (tenantService) => tenantService.currentTenantValue.language // returns locale string
}
]
})
Мой сервис:
public currentTenant: Observable<Tenant>;
constructor() {
this.currentTenantSubject = new BehaviorSubject<Tenant>(null);
this.currentTenant = this.currentTenantSubject.asObservable();
}
public get currentTenantValue(): Tenant {
return this.currentTenantSubject.value;
}
Я считаю, что это что-то с наблюдаемым, и провайдер принимает первое состояние переменной до получения значения языка, которое приходит через httpClient.get