Signature
export declare function combineAll<R>(project?: (...values: Array<any>) => R): Observable<R>; |
Example
var clicks = Rx.Observable.fromEvent(document, 'click'); |
如果没有project,他会把内部的多个子流执行 combineLatest 结果输出
场景 –重点是高阶的那个控制流
首先和combineLatest对比:
这个operator 多了一个限制,就是需要一个高阶Observable Complete 的时候才去执行
内部子流的combineLatest
这个例子的输出1: 0 2: 0 3: 0 4: 0
0
1: 1 2: 0 3: 0 4: 0
1
1: 1 2: 1 3: 0 4: 0
2
1: 1 2: 1 3: 1 4: 0
3
1: 1 2: 1 3: 1 4: 1
4
1: 2 2: 1 3: 1 4: 1
5
1: 2 2: 2 3: 1 4: 1
6
1: 2 2: 2 3: 2 4: 1
7
1: 2 2: 2 3: 2 4: 2
8
思考
如果子流像这个例子一样都是异步流,那就会形成 时间旅行的感觉
个人认为: 绝佳debug场景恢复