Rxjs完成后主题next()()

Bas*_*sit 8 javascript observable observer-pattern rxjs rxjs5

我有连接的服务Subject()做分页.我正在使用next(newData)传递给主题,这让事情保持活力,现在我需要complete()在每个ajax调用上使用并将其传递给主题.但在做了一个之后,complete()我开始得到错误.

我想知道,如果一旦被触发,我们仍然可以传递Subject可观察量吗?next(newData)completed()

use*_*222 12

关于堆栈溢出的前一个问题,有一些关于主题的信息:这里.我鼓励你复习一下.

关于您的具体问题,一旦完成的科目不能再发出.这是他们遵守的合同的一部分.根据应用程序的逻辑和流程,您可能:

  • 决定不完成这个主题(如果你以后还需要它,为什么还要完成它?)
  • 在需要时创建一个新主题,但是你必须将它传递给任何需要它的人.

  • 这种说法:“受试者一旦完成就不能再发射”实际上是错误的。即使 ReplaySubject 完成后,它仍然会向迟到的订阅者发送值。有关此主题的更多详细信息,请查看[此博客文章](https://medium.com/@martin.sikora/rxjs-subjects-and-their-internal-state-7cfdee905156)。 (2认同)