Задать вопрос

Как дополнить библиотеку RxJs функцией update() для запуска next()?

Я не нашёл возможности в RxJs изменить BehaviorSubject только если значение изменено.
(да, конечно мы можем в подписке написать DistinctUntilChanged), но я о первоначальном добавлениии в стрим.
Я хочу, что б сперва проверялось .getValue() и если оно отличается, то выполнить next()
Как такое сделать?
Это с прототипом или декоратором или ещё как-то ?
  • Вопрос задан
  • 22 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Skillbox
    Frontend-разработчик
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
Aetae
@Aetae Куратор тега TypeScript
Тлен
Трогать родной BehaviorSubject не стоит, не одному тебе потом с ним работать.

Ты мог бы написать свой вариант довольно просто таким образом:
class DistinctBehaviorSubject<T> extends BehaviorSubject<T> {
  next(value: T) {
    if (this.value !== value)
    	super.next(value);
  }
}
Но я на вскидку не скажу какие тут могут быть подводные камни.)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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