相关疑难解决方法(0)

抓住所有未处理的javascript承诺拒绝

我想抓住在javascript Promise中发生的所有未处理的异常/拒绝.是否有一种很好的方法来捕获它们而不.catch(..)在Promise链的每一端添加一个?(如果忘记添加此项,则错误会无声地消失).

Google Chrome中的开发者控制台可以记录它们,我也喜欢在生产环境中记录它们.

对于普通的javascript异常,我使用该window.onerror函数,但Promise中的错误调用此函数.

例:

window.onerror = function (e) {
    alert("unhandled error: " + e);
};

var p = new Promise(function (resolve, reject) {
    var nullObject = null;
    // Raise a TypeError: Cannot read property 'forceNullError' of null
    var x = nullObject.forceNullError(); 
    resolve();
});

p.then(function () { alert('success'); });
Run Code Online (Sandbox Code Playgroud)

JSFiddle:https://jsfiddle.net/f7zwej6L/

*)我注意到WinJS有一个.done(..)我想要的方法,但Native Promises没有.

javascript es6-promise

45
推荐指数
2
解决办法
2万
查看次数

标签 统计

es6-promise ×1

javascript ×1