Track the list of currently unhandled promise rejections.
$ npm install --save currently-unhandled
const currentlyUnhandled = require('currently-unhandled')(); // <- note the invocation var fooError = new Error('foo'); var p = Promise.reject(new Error('foo')); // on the next tick - unhandled rejected promise is added to the list: currentlyUnhandled(); //=> [{promise: p, reason: fooError}]' p.catch(() => {}); // on the next tick - handled promise is now removed from the list: currentlyUnhandled(); //=> [];
Returns an array of objects with promise
and reason
properties representing the rejected promises that currently do not have a rejection handler. The list grows and shrinks as unhandledRejections are published, and later handled.
This module can be bundled with browserify
. At time of writing, it will work with native Promises in the Chrome browser only. For best cross-browser support, use bluebird
instead of native Promise support in browsers.
MIT © James Talmage