概述
- 这是一个非常常用的操作符,项目大概率会用到
- 功能类似Promice.all
- 只会返回一次数据,当每个流数据都拿到最后数据后才会返回数据
事例
import { of, forkJoin, interval } from 'rxjs';
import { delay, take } from 'rxjs/operators';
const source1 = interval(1000).pipe(
take(10)
);
const source2 = of(2).pipe(
delay(2000)
);
const source3 = of(3).pipe(
delay(3000)
);
forkJoin([source1, source2, source3]).subscribe(res => console.log(res)) // 10秒后输出 [9, 2, 3]
source1会拿到10个数据,forkJion订阅后,会在最后都拿到数据才输入订阅数据
这里核心点记得不管参数流有多少次返回数据,forkJoin都会在其参数流都返回最后一次数据才会输出结果
文中如有错误,欢迎在评论区指正,如果这篇文章帮助到了你,欢迎点赞和关注
本文使用 mdnice 排版