Почему подписка может быть вызвана по теме даже после ее завершения? - PullRequest
0 голосов
/ 19 февраля 2020

Как и в большинстве блогов, нам не нужно явно отписываться от темы, когда мы называем ее завершенной. Я попытался подписаться на эту тему после завершения звонка. Полный обратный вызов все еще выполняется.

let s = new Subject();
s.complete();

s.subscribe(
  () => {
    console.log("next");
  },
  () => {},
  () => {
    console.log("complete");
  }
);

Вывод: завершено

Почему подписка на тему разрешена после ее завершения?

1 Ответ

1 голос
/ 20 февраля 2020

В этом случае происходит следующее: сначала отправляется «полное» уведомление, а сразу после этого подписка отменяется. Таким образом, все еще остается факт, что вам не нужно отписываться вручную.

Если вам интересно, зачем вообще нужна подписка, вы можете вспомнить пример, где мы применяем оператор isEmpty к теме и сделайте что-нибудь в зависимости от значения этого оператора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...