调用 a 时forkJoin
:
forkJoin(observableA, observableB)
.pipe(takeUntil(onDestroy$))
Run Code Online (Sandbox Code Playgroud)
在.pipe(takeUntil(onDestroy$))
加入时角组件被破坏,释放可观。这是否也被 observableA 和 obserableB 调用?还是应该在传递给的所有 observable 上单独调用它forkJoin
?
它将自动取消订阅源 observables。
一个简单的测试来确认。
import { of, interval, forkJoin } from 'rxjs';
import { map, takeUntil, delay, tap } from 'rxjs/operators';
const source1 = interval(200).pipe(tap(i => console.log(i)));
const source2 = interval(300).pipe(tap(i => console.log('a' + i)));
const stop = of('stop').pipe(delay(2000));
forkJoin(source1, source2).pipe(takeUntil(stop)).subscribe();
Run Code Online (Sandbox Code Playgroud)
在 2 秒内记录值然后停止。
归档时间: |
|
查看次数: |
753 次 |
最近记录: |