Skip to main content

Що робить BehaviorSubject у сервісах стану?

BehaviorSubject - це тип Subject із бібліотеки RxJS, який зберігає останнє надіслане значення й одразу віддає його новим підписникам.

У сервісах стану його використовують, щоб:

  1. Зберігати поточний стан (наприклад, поточного користувача, налаштування, прапорець завантаження).
  2. Дозволяти компонентам підписуватися на потік і отримувати як актуальне значення, так і всі подальші зміни.
  3. Змінювати стан через виклик next(), що автоматично сповіщає всі підписані компоненти.

Приблизно так:

typescript
private user$ = new BehaviorSubject<User | null>(null); setUser(user: User) { this.user$.next(user); } getUser(): Observable<User | null> { return this.user$.asObservable(); }

На відміну від Subject, BehaviorSubject вимагає початкове значення й завжди віддає останнє під час нової підписки.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.