сделать выбор языка( данные приходят с apollo GQL)
Чтобы установить язвк default, понимаю что нужно использовать new BehaviorSubject() так как есть изначальное значение.
Подскажите плиз, как передать в new BehaviorSubject() асинхронные данные по умолчанию?
(сейчас захардкодил туда ключ, но хотелось бы как-то динамический его туда передавать)
export class HeaderService {
langChanged = new BehaviorSubject('85109a2c-4cdc-4f07-bfc1-7b9bc1f6f056');
constructor(private localesGQL: LocalesGQL) {}
getLanguages() {
return this.localesGQL
.watch()
.valueChanges.pipe(map(({data}) => data.locale));
}
setLanguage(langId: string) {
this.langChanged.next(langId);
}
}
Инициируйте behaviorSubject, например, в конструкторе, где можно послать запрос и получить нужный ключ
Обсуждают сегодня