Перед обновлением RxJS до 5.0.0-rc.0
Я использовал .cache()
, чтобы разделить подписку в моем приложении с угловым выражением. Большим преимуществом в использовании этого было то, что любая новая подписка получит последнее опубликованное значение.RxJS 5 и альтернативы оператору кеша
Команда RxJS решил убрать его, и теперь я считаю себя вручную проводкой личного BehaviorSubject
или ReplaySubject
и затем вызвать .asObservable()
всего времени. Это похоже на много шаблонов, учитывая тот простой способ, которым мы должны были это сделать раньше.
Я пропустил какой-то более простой способ? Я не могу найти оператора .replay()
, и операторы .share()
и .publishReplay()
, похоже, тоже не делают этого.
Спасибо!
ОК, я получаю свою ошибку прямо сейчас. Я могу использовать 'publishReplay' и' refCount', но если у меня нет подписчика, я могу пропустить/пропустить некоторые из значений базовой последовательности. Я решил это с призывом «подписаться» сразу после этого, но я бы предположил, что это не отличное решение. –
Я сделал сообщение в SO Документация об этом с подробным объяснением, как это работает: http://stackoverflow.com/documentation/rxjs/8247/common-recipes/26490/caching-http-responses#t=201612161544428695958 – martin