【问题标题】:How to re-emit the last value of a subject如何重新发出主题的最后一个值
【发布时间】:2018-03-04 22:24:38
【问题描述】:

我想将 BehaviourSubject 的最后一个值重新发送到现有订阅。我试过last()publishlast()share()refcount()。但它不会使用最后发出的值再次触发现有订阅。

【问题讨论】:

  • this.subject.take(1).subscribe(item => this.subject.next(item))?但是为什么你需要这样做?上下文是什么?
  • 这看起来像是在设置订阅者。我希望主题重新发出最后一个值。
  • 确实如此,这就是它的作用。它将取一个值,重放最后一个值,并将其推回主题以重新发出。

标签: javascript rxjs angular2-observables behaviorsubject


【解决方案1】:

如果 sub 是您的 BehaviorSubject,这将起作用:

sub.next(sub.value)

【讨论】:

  • 您还可以节省一些击键:sub.next(sub.value)
  • 谁能想到这不起作用的任何原因?在我的应用程序中它肯定没有,我不知道有什么不同。
猜你喜欢
  • 2016-09-07
  • 1970-01-01
  • 1970-01-01
  • 2019-06-14
  • 1970-01-01
  • 1970-01-01
  • 2021-12-07
  • 1970-01-01
  • 2018-01-18
相关资源
最近更新 更多