我有一个管道,它利用httpClient来提供可观察的响应。我有请求URL的列表。所以,代码看起来是这样的:
let observables = urls.map(url=>myPipe.transform(url));
forkJoin(observables).subscribe(results=>console.log(results));
我想创建一个Map/Object,它将把请求url映射到它们各自的响应。类似:
{
url1 : response1,
url2 : response2
...
}
我希望它们立即可用,所以使用forkJoin。
我假设您的管道将url转换为http请求,因此
试试这个:
let observables = Object.fromEntries(urls.map(url=>[url, myPipe.transform(url)]));
forkJoin(observables).subscribe(results=>console.log(results));
首先我们创建一个对象{url: Observable}
,然后使用forkJoin
,我们可以完全按照的要求执行