首页 > 其他 > 详细

Promise.all 出现异常时候处理

时间:2020-03-17 20:23:19      阅读:70      评论:0      收藏:0      [点我收藏+]

 

function P(error = false) {
    return new Promise((res, rej) => {
        if (error) {
            rej(‘error‘)
        } else {
            res(‘right‘)
        }
    })
}
var a = P() //成功的Promise
var b = P(true) // 失败的promise

 

Promise.all(
  // promise数组,经过下面处理还是promise [a, b].map((p)
=> {
      //这里的红色字体没有什么作用,返回的依旧是成功的promise,我们优化,将他删除
return p.then(function(res) { return res }) .catch(error => error) }) ) .then(res => { console.log(res, ‘res‘) }) .catch(error => { console.log(error, ‘error‘) })
//这里是优化过的代码
Promise.all( [a, b].map((p)
=> { return p.catch(error => error) }) ) .then(res => { console.log(res, ‘res‘) }) .catch(error => { console.log(error, ‘error‘) })

 

Promise.all 出现异常时候处理

原文:https://www.cnblogs.com/hill-foryou/p/12512885.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!