gpt4 book ai didi

javascript - 将 observable 数组的 observable 转换为 observable 数组

转载 作者:行者123 更新时间:2023-12-02 23:18:54 31 4
gpt4 key购买 nike

我正在尝试查询数据库。迭代结果列表,并为每一项再执行一个请求。在 rxjs 构建结束时,我有 Observable<Observable<Timesheet>[]> 。但我需要Observable<Timesheet[]> 。如何做到这一点?

this.caseService.getElapsedCases(date).pipe(
map(elapsedCases => elapsedCases.map(elapsedCase => {
return this.caseService.findOneById(elapsedCase.caseId).pipe(
map(loadedCase => {
const timesheet: Timesheet = {
id: elapsedCase.id,
start: elapsedCase.start,
end: elapsedCase.end,
case: loadedCase,
isActive: false
};

return timesheet;
})
);
}))
);

最佳答案

您需要 forkJoin 单独的请求并 mergeMap 到源:

const loadElapsedCase: Observable<TimesheetEnt[]> = getElapsedCase().pipe(
mergeMap(elapsedCases => elapsedCases.map(elapsedCase => {
return forkJoin(findOneById().pipe(
map(loadedCase => {
return {
id: elapsedCase.id,
title: elapsedCase.title,
case: loadedCase
};
}))
);
}))
);

关于javascript - 将 observable 数组的 observable 转换为 observable 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57036201/

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