将 Observables 与任何一个的最新值和其他 observables 的先前值相结合

Combine Observables with latest of any one and previous value of the other observables

假设我有可观测值 A、B、C。我必须听取这三个的变化并更改计算。

即,在任何一个可观察值的值发生变化时,我需要使用当前的新值和其余可观察值的旧值重新计算。

我尝试使用 combineLatest,它是完美的,除了第一个行为是所有可观察对象的值都应该有一个 latest/change。

您可以在将每个源 Observable 传递给 combineLatest:

之前在每个源 Observable 前面加上 startWith 运算符
combineLatest(
  obsA$.pipe(startWith(null)),
  obsB$.pipe(startWith(null)),
  obsC$.pipe(startWith(null)),
)

然后您必须手动检查哪些值是 null