нажмите с debounce не go в подписку - PullRequest
1 голос
/ 20 января 2020

У меня есть ошибка, из-за которой я не могу найти ответ в Google. Мой текущий код не go в subscribe ()

// this one doesn't work and doesn't go into the subscribe()
 this._form.valueChanges
    .pipe(
      tap(data => this.service.setSaving(true)),
      debounceTime(500),
      takeUntil(this._unsubscribe$))
    .subscribe(data => {
      console.log("inside subscription");
      .
      .
      .
    })

, однако, когда я изменяю функцию set setSaving на console.log("something"), она работает нормально. Может ли кто-нибудь объяснить мне это?

// this goes into subscribe()
 this._form.valueChanges
    .pipe(
      tap(data => console.log("something")),
      debounceTime(500),
      takeUntil(this._unsubscribe$))
    .subscribe(data => {
      console.log("inside subscription");
      .
      .
      .
    })

и вот метод setSaving

  setSaving(saving: boolean){
    this._savingSource.next(saving);
  }

По сути, все, чего я пытаюсь добиться, - это запустить метод setSaving перед debounceTime & подписка пинает в

ура, Том

1 Ответ

0 голосов
/ 20 января 2020

глупый я,

проблема была не с синтаксисом или чем-то связанным с rx js ....

был еще один подписчик на saving$, который перезапускал .valueChanges подписка ... в основном она отписывалась от .valueChanges до того, как она смогла go ввести код выше

...