0

x是一个流。在每个事件上,我都会生成一个x_i本身会产生事件的流。从这个设置中,我想生成一个扁平的输出流,它只包含最近的事件x_i,直到x结束:

x:   ├─┬───┬─────┬────────┤
x_3:   │   │     └─E────H───I─...
x_2:   │   └─B───D────G───────...
x_1:   └─A─────C────F─────────...

预期的结果是

     ├───A───B───D─E────H─┤

我不能使用flatMapon x,因为这样所有x_i事件都会被合并到输出流中,而不仅仅是最近的子流中的事件。

我也不能使用concatMap,因为x_i是无限的,输出流实际上是x_1.

在我看来,这似乎是一个相当常见的场景,因此我的问题是:这可能使用标准 RxDart(我正在使用),还是我需要自己实现?

4

1 回答 1

3

您正在寻找的是swtichLatestrxdart 的运营商

http://reactivex.io/documentation/operators/switch.html 在此处输入图像描述

于 2018-10-11T08:48:28.337 回答