【发布时间】:2020-01-15 10:41:31
【问题描述】:
我想对端点进行并行独立调用。
首先我构造我的调用然后我调用forkJoin。
getAllDirections(data: Object, date: string) {
let urls = [];
for (let elm in data) {
let url = `http:XXXXX?date=${date}&directions=${data[elm].All.join()}`;
urls.push(this.http.get<ISchedules>(url));
}
return forkJoin(urls).pipe(
map(dirData => {
let dataSorted = dirData.map(elm => _.groupBy(elm.data, 'direction'));
return dataSorted;
})
);
}
数据参数是我传递给 URl 的参数对象
data = {
b1: [params1],
b2: [params2],
b3: [params3]
}
我希望能够构造这个对象
dataRes = {
b1: [resDataofParams1],
b2: [resDataofParams2],
b3: [resDataofParams3]
}
当我得到数组响应时,我应该将每个数组项影响到它对应的b{n},我怎样才能以我在forkJoin 中传递的相同顺序获取响应?或者有没有办法在this.http.get<ISchedules>(url) 中传递一个参数并在我得到数据响应时获取它?
【问题讨论】:
标签: javascript angular rxjs reactive-programming