我有类似的观察:
let obs1$ = of(problemsIds).pipe(flatMap(el =>
return forkJoin(el.map(id =>
this.projectsService.getProblemsChanges(+id)))))
let obs2$ = of(versionsIds).pipe(flatMap(el =>
return forkJoin(el.map(id =>
this.projectsService.getVersionById(+id)))))
然后我想让他们并行:
return forkJoin([obs1$, obs2$])
没有任何反应。
但是当我用1个盲人(任何一个人)完成它时,它就会产生结果。
为什么我不能这样结合它,我怎么能实现它?
附:我知道我必须发送请求作为ID数组,但我对此案感兴趣。谢谢
以下应该适合你。请试试。
const obs1$ = this.problemIds.map(id => this.service.getProblemsChanges(+id));
const obs2$ = this.versionIds.map(id => this.service.getVersionById(+id));
return forkJoin(forkJoin(obs1$), forkJoin(obs2$)).subscribe(data => console.log(data));