Сценарий
Удостоверихме потребител и публикувахме потребителския обект в нашия обект store(OStore
) екземпляр.
Също така искаме да поддържаме isAuthenticated:Observable<boolean>
, който проследява дали даден потребител е удостоверен в нашето приложение.
Приближаване
Първо създаваме свойство user$:Observable<User|boolean>
в нашата държавна услуга ( StateService
).
След това инициализираме магазина с USER_KEY
, за да проследим удостоверения потребител. Първоначалната стойност е false
, която казва на приложението, че магазинът в момента не съдържа потребители:
this.OS.post(StateService.USER_KEY, false);
Накрая извличаме нашето isAuthenticated:Observable<boolean>
с помощта на оператора RxJS map
, както следва:
this.isAuthenticated$ = this.OS.observe(StateService.USER_KEY).pipe(map(u=>!!u));