異步等待返回結果的解決方案


異步等待返回結果的解決方案:

方案一:promise.then()

var isfree=pay.checkProductFree('cut_img');
//判斷工具是否免費
isfree.then(function(res){
    if(res){
        //該工具免費
        saveData();
    }else{
        if (isVip===false){
            pay.showPayDialog();
            return;
        }else{
            saveData();
        }


    }
})

方案二:async await;

注意:await 必須與asnyc 結合使用;

//  上傳圖片校驗
async checkUpload() {
    var login = new Login();
    var isLogin = login.checkLogin();
    //是否登錄
    if (isLogin === false) {
        login.changeDialog("wechat");
        return false;
    }
    var user=new User();
    var isVip = user.checkUserType();
    var pay=new Pay();
    var isfree=await pay.checkProductFree('matting');
    return new Promise((resolve, reject) => {
       if(isfree===true){
           resolve(true);
       }
       if(isfree===false){
           //vip會員
           if(isVip==true){
               resolve(true);
           }
           if(isVip==false){
               pay.showPayDialog();
               resolve(false);
           }
       }
    })

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM