Javascript 等待第一个承诺得到解决或全部被拒绝
我需要在第一个ajax调用成功并返回true时解决我的承诺,否则我需要等待所有被拒绝的承诺,然后返回false 我可以用promise.race、AllSetted或Similar来完成吗?您需要的是: […]一旦iterable中的一个承诺实现,将返回一个与该承诺的值解析的承诺。如果iterable中没有承诺(如果所有给定的承诺都被拒绝),则返回的承诺将被AggregateError拒绝[…] 但它仍然是实验性的,但您可以检查现有的(我没有检查它的正确性,但乍一看它似乎是有效的):Javascript 等待第一个承诺得到解决或全部被拒绝,javascript,promise,Javascript,Promise,我需要在第一个ajax调用成功并返回true时解决我的承诺,否则我需要等待所有被拒绝的承诺,然后返回false 我可以用promise.race、AllSetted或Similar来完成吗?您需要的是: […]一旦iterable中的一个承诺实现,将返回一个与该承诺的值解析的承诺。如果iterable中没有承诺(如果所有给定的承诺都被拒绝),则返回的承诺将被AggregateError拒绝[…] 但它仍然是实验性的,但您可以检查现有的(我没有检查它的正确性,但乍一看它似乎是有效的): 函数任意(
函数任意(承诺){
回报你的承诺(
promises.map(promise=>
承诺。然后(val=>{
投掷val;
},reason=>reason),
),
).然后(原因=>{
抛出原因;
},firstResolved=>firstResolved);
};
试试promise.all()
这能回答你的问题吗@user9879287Posmise.all()
等待解决所有承诺,或在其中一个承诺被拒绝时立即拒绝。这与OP的要求正好相反。