Window: rejectionhandled event

Das rejectionhandled Event wird an den globalen Bereich des Skripts gesendet (gewöhnlich window, aber auch Worker), wann immer ein abgelehntes JavaScript-Promise verspätet behandelt wird, d.h. wenn ein Handler an das Promise angehängt wird, nachdem dessen Ablehnung ein unhandledrejection-Event verursacht hat.

Dies kann zur Fehlersuche und für die allgemeine Anwendungsstabilität in Verbindung mit dem unhandledrejection-Event verwendet werden, das gesendet wird, wenn ein Promise abgelehnt wird, aber zum Zeitpunkt der Ablehnung kein Handler vorhanden ist.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder legen Sie eine Ereignishandler-Eigenschaft fest.

js
addEventListener("rejectionhandled", (event) => {});
onrejectionhandled = (event) => {};

Eventtyp

Ereigniseigenschaften

PromiseRejectionEvent.promise Schreibgeschützt

Das JavaScript-Promise, das abgelehnt wurde.

PromiseRejectionEvent.reason Schreibgeschützt

Ein Wert oder ein Object, das angibt, warum das Promise abgelehnt wurde, wie es an Promise.reject() übergeben wurde.

Aliase für Ereignishandler

Zusätzlich zur Window-Schnittstelle ist die Eigenschaft onrejectionhandled auch bei folgenden Zielen verfügbar:

Beispiel

Sie können das rejectionhandled-Event verwenden, um Versprechen, die abgelehnt wurden, zusammen mit den Gründen der Ablehnung in der Konsole zu protokollieren:

js
window.addEventListener(
  "rejectionhandled",
  (event) => {
    console.log(`Promise rejected; reason: ${event.reason}`);
  },
  false,
);

Spezifikationen

Specification
HTML
# unhandled-promise-rejections
HTML
# handler-window-onrejectionhandled

Browser-Kompatibilität

Siehe auch