Когда в проекте стоит использовать BehaviorSubject, а когда лучше выбрать другой подход?

AngularMiddleRxJSТеорияangularrxjsbehaviorsubjectsubjectsmiddle

Что хотят услышать интервьюеры:

BehaviorSubject — это Subject с текущим значением и initial value.

Ответ:

Использовать стоит: когда задача действительно требует этого механизма и есть понятный контракт использования.

Лучше не использовать: когда простое состояние, обычный компонент или сервис решают задачу проще.

Пример:

this.query$.pipe(debounceTime(300), switchMap(q => this.api.search(q)))

Риск: хранить mutable object и менять его без next нового значения.

Источники

Похожие вопросы