我已经通过其他stackoverflow答案看了,似乎无法找到答案。Promise.all从API的拒绝
实际上,我正在写一个模块来验证一些数据,然后如果没有错误将它传递给第三方api。
我的问题是,如果Promise.all拒绝,那么我的初始呼叫承诺仍然移动到下一个。
------my main app---------
const data = [1,0,1]
api.sendData(data)
.then(() => {
*ALWAYS HITTING THIS*
})
.catch(err => console.log(err))
---------the api---------
return await a.test(data).then(rd => {
return rd
})
.catch(ed => {
return ed
});
-----a.test function--------
let request = data.map((i) => {
return new Promise((resolve, reject) => {
if(i < 1) {
reject('value to low')
}
resolve(i);
});
});
return await Promise.all(data)
});
有谁能告诉我为什么我的catch没有在我的主应用程序中被击中? 上面的代码是伪的,但描述了这个问题。
为什么,邻为什么这么多的人认为'返回等待somePromise'永远是正确的做法?提示,没有理由在那里使用“等待”。你以任何一种方式回复承诺。 – jfriend00