Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
AggregateError: Kein Promise in Promise.any wurde erfüllt
Die JavaScript-Ausnahme "Kein Promise in Promise.any wurde erfüllt" tritt auf, wenn alle Promises, die anPromise.any() übergeben werden, abgelehnt werden. Dies ist die einzige eingebaute Anwendung vonAggregateError.
In diesem Artikel
Nachricht
AggregateError: All promises were rejected (V8-based)AggregateError: No Promise in Promise.any was resolved (Firefox)AggregateError (Safari)
Fehlertyp
AggregateErrorWas ist schiefgelaufen?
Promise.any() lehnt nur ab, wenn alle Promises, die übergeben wurden, abgelehnt werden. Sie sollten auferrors zugreifen, um das Array mit den Ablehnungsgründen zu erhalten. Lesen Sie denUmgang mit Promises für weitere Informationen darüber, wie asynchron abgelehnte Promises behandelt werden. Dieser Fehler tritt auch auf, wennPromise.any() ein leeres iterierbares Objekt erhält.
Beispiele
>Leeres iterierbares Objekt
js
Promise.any([]).catch((error) => { console.error(error); // AggregateError: No Promise in Promise.any was resolved});Umgang mit allen Ablehnungen
js
const promises = [ fetch("/data-location1"), fetch("/data-location1"), fetch("/data-location1"),];Promise.any(promises) .then((value) => console.log(value)) .catch((error) => { // None of the fetches were successful for (const e of error.errors) { console.error(e); } });// Using awaitasync function fetchFirstSuccessful() { try { const value = await Promise.any(promises); console.log(value); } catch (error) { for (const e of error.errors) { console.error(e); } }}