References

Promise.allSettled()

Leírás

A szabványos beépített Promise objektumot és annak API Promise.all-ját használta, amely addig vár, amíg a tömbben megadott összes ígéret megoldódik. De ez az API nem kezeli a hibákat. Amikor legalább egy hiba történik az ígéretek tömbjében, a függvény azonnal leáll, és nem várnak további eredményeket.

Szerencsére elérhető egy második API, a Promise.allSettled, amely garantálja, hogy minden ígéretet kivár, függetlenül attól, hogy az eredmény érvényes vagy hiba.

A fő különbség a Promise.all-hoz képest az, hogy minden ígéret egy sor információra oldódik fel, ahol mind az állapot (teljesült vagy elutasított), mind az érték (teljesítés esetén) vagy az ok (elutasítás esetén) elérhető.

Szintaxis

Promise.allSettled(iterable)

Példa

const promise1 = Promise.resolve(3)
const promise2 = new Promise((resolve, reject) => setTimeout(reject, 100, 'foo'))
const promises = [promise1, promise2]
 
Promise.allSettled(promises).then((results) => results.forEach((result) => console.log(result.status)))
 
// "fulfilled"
// "rejected"
in this article
back to top