这是我对嵌套Promise的第一次尝试。我正在使用bluebird库,但我认为所有Promise库的想法都是一样的。
在高层次上,这就是我想要做的:
myService.getSomeData(url)
.then((data) => {
myOtherService.getMoreData(data.uniqueId)
.then((thisDataIsAnArray) => {
//loop over the data above and do something
});
});
getMoreData()
应该进行 X 个服务调用并将结果存储在一个 X 元素长度的数组中。这是我开始迷失的地方,因为我不确定如何制作这种方法以及我应该从中返回什么。我在蓝鸟的采取了一些刺Promise.all
和Promise.map
,但我挣扎,我想我会征求意见。