在某些情况下,Rxjs流不可避免地被卡住

时间:2020-03-01 12:18:11

标签: javascript redux stream observable ngrx

我是ngrx的新手。我有一个electron项目。在某些情况下,存储中的值会按照redux开发工具中的显示进行更新。但是我对商店中的值的订阅未触发,并引起了一些UI效果,从而揭示了此问题。

我们使用角度,但我认为这无关紧要。我在Subject中遇到了类似的问题,并通过在SetTimeout(0)中发布数据解决了该问题。我无法更改Observable值的发出过程,只能从商店进行订阅。谁能提供一些线索将不胜感激。

mySubject.next(true) // oops, it delayed and looks like stuck
SetTimeout(() => mySubject.next(true))  // this done the job and everythings looks like normal. But why?

this.store
  .select(getSome)
  .pipe(withLastestFrom(this.store.select(getAnother)), ...)
  .subscribe(x => 
    console.err(`${JSON.stringfy(x)}`
  )

值在存储中已更新,但是日志延迟了很长时间,并且似乎需要一些特殊的操作。有人可以解释哪些行为可能导致流卡死以及如何检查吗?

0 个答案:

没有答案