Window : évènement rejectionhandled
L'évènement rejectionhandled
est envoyé à la portée globale du script (il s'agit généralement de window
, mais ça peut aussi être Worker
) lorsqu'une promesse rompue est gérée tardivement, c'est-à-dire lorsqu'un gestionnaire est attaché à la promesse après que celle-ci a échoué en entraînant un évènement unhandledrejection
.
Cet évènement peut être utilisé pour le débogage et pour la résilience des applications en général. On pourra l'utiliser avec l'évènement unhandledrejection
qui est émis lorsqu'une promesse est rompue et qu'elle n'a pas de gestionnaire d'échec à ce moment.
Syntaxe
On pourra utiliser le nom de l'évènement dans des méthodes comme addEventListener()
, ou utiliser une propriété qui est un gestionnaire d'évènement.
addEventListener("rejectionhandled", (event) => {});
onrejectionhandled = (event) => {};
Type d'évènement
Un objet de type PromiseRejectionEvent
qui hérite de Event
.
Propriétés de l'évènement
PromiseRejectionEvent.promise
Lecture seule-
La promesse JavaScript qui a été rompue.
PromiseRejectionEvent.reason
Lecture seule-
Une valeur ou un objet qui indique la raison de l'échec de la promesse, comme celui qui serait passé à
Promise.reject()
.
Alias pour les gestionnaires d'évènement
En plus de l'interface Window
, la propriété onrejectionhandled
pour gérer l'évènement est disponible sur les cibles suivantes :
Exemple
L'évènement rejectionhandled
peut être utilisé afin de journaliser les promesses rompues dans la console, ainsi que les raisons de leur échec :
window.addEventListener(
"rejectionhandled",
(event) => {
console.log(`Promesse rompue - raison : ${event.reason}`);
},
false,
);
Spécifications
Specification |
---|
HTML Standard # unhandled-promise-rejections |
HTML Standard # handler-window-onrejectionhandled |
Compatibilité des navigateurs
BCD tables only load in the browser