js promise then 用法

629 阅读1分钟

promise 前端调用链

以前你前端做异步嵌套调用的是这么玩的

//执行异步A
$.post("xxx",function(data){
    //执行异步B
    $.post("xxx",function(data){
 
    
    })
})

现在你可以这么玩

//
new Promise((resolve, reject) => {
     $.post("xxx",function(){
         resolve();//正常执行,带参方式resolve("xxx")
     });   
}).then((上一步返回的参数) => {//----------------------这里可以写多个Start
    //上面如果写的resolve,这个then里面就能收到
    //如果继续则还new 一个promise 返回
    return new Promise((resolve, reject) => {
        $.post("xxx",function(){
             reject();//异常执行,带参方式reject("xxx")
        });               
    });//---------------------------------------------这里可以写多个End
}).catch((上一步返回的参数) => {
     //用reject返回的,则进这里         
})