Почему так много объектов Subject в RX? - PullRequest
1 голос
/ 27 марта 2019

Не могли бы вы уточнить следующие вещи - почему

  1. Тема
  2. Поведение объекта
  3. ReplaySubject

существуют все вместе?

Когда будет достаточно только субъект с параметром буфера? Ведь только этим (выделяющим последнюю сумму) они отличаются.

Это может быть: (параметр имеет размер буфера)

  • Тема (0) = обычная тема ();
  • Subject (1) = BehaviourSubject ();
  • Subject (5) = ReplaySubject (5);

Какие причины?

1 Ответ

1 голос
/ 27 марта 2019

1) Субъект даже не содержит значений. Все значения, полученные до подписки, не будут видны подписчикам.

2) BehaviorSubject содержит последнее значение и должно содержать значение. Подписчики всегда будут получать последнее значение.

3) ReplaySubject содержит значения x, но не обязан. Подписчики получат последние значения x, если они были выпущены ранее. В противном случае они получат 0 - х значений.

Они разные и не могут быть изменены между собой без потери функциональности.

...