gpt4 book ai didi

angular - 无法让 forkJoin 开火

转载 作者:太空狗 更新时间:2023-10-29 18:25:28 26 4
gpt4 key购买 nike

我正在 Angular 中构建一个守卫,我需要在其中发出两个不同的 HTTP 请求,并根据这两个请求来确定是否继续。我注意到 forkJoin 是执行此操作的正确方法,但我无法触发。

在我的代码中,我有:

this.userService.watchCurrentUser().subscribe(data => { console.log(data) });
this.orgService.watchOrg().subscribe(data => { console.log(data) });
Observable.forkJoin(
this.userService.watchCurrentUser(),
this.orgService.watchOrg()
).subscribe(data => {
console.log(data);
});

前两个订阅是后来添加的,以测试调用是否真的触发了,它们确实触发了;我看到了他们的日志。但我从未从 forkJoin 中看到很多东西。

我在我的文件顶部导入它:

import { Observable, BehaviorSubject } from 'rxjs/Rx';
import 'rxjs/add/observable/forkJoin';

为了使用 forkJoin,我还缺少其他东西吗?

最佳答案

Observable.forkJoin() 要求所有源 Observable 至少发出一项并完成。

您确定您的两个源 Observable 都已完成吗?

如果他们不这样做(并且基于他们的内部逻辑他们不能),也许您更愿意使用 zip()combineLatest()

关于angular - 无法让 forkJoin 开火,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43427065/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com