我有一个框架,全局用try-catch包裹用于全局异常处理,但是其中的Promise的异常无法处理。这种要如何处理?
思路:基于Promise做封装,其中处理异常。框架中用封装的Promise,但是不知道该怎么写新的Promise
我有一个框架,全局用try-catch包裹用于全局异常处理,但是其中的Promise的异常无法处理。这种要如何处理?
思路:基于Promise做封装,其中处理异常。框架中用封装的Promise,但是不知道该怎么写新的Promise
全局捕获示例
window.addEventListener('unhandledrejection', function(event) {
// the event object has two special properties:
alert(event.promise); // [object Promise] - the promise that generated the error
alert(event.reason); // Error: Whoops! - the unhandled error object
});
new Promise(function() {
throw new Error("Whoops!");
}); // no catch to handle the error
简单封装
let myPromise = (promise, callback) => {
promise.then(callback).catch(console.log)
}
let p = new Promise((resolve, reject) => reject('error'))
let cb = () => console.log('callback')
myPromise(p, cb) // error
13 回答13.1k 阅读
7 回答2.3k 阅读
3 回答1.4k 阅读✓ 已解决
6 回答1.4k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
3 回答1.5k 阅读✓ 已解决
6 回答1.2k 阅读
node
browser