使用promise封装ajax

function getPromiseData(url,dataParams,isAsync,methodType) {
    return new Promise(function(resolve, reject) {
        var type = methodType || "POST";
        $.ajax({
            url: url,
            type: type,
            data: JSON.stringify(dataParams),
            contentType: "application/json",
            async: isAsync,
            success: function (data) {
                resolve(data);
            },
            error: function (error) {
                reject(error);
            }
        });
    });
}
var getProData1=getPromiseData(webRoot+"/foreManCenter/getForeManBasic",{"userId":obj.userId},true,"POST");
getProData1.then(function(data){
    console.log(data)
}, function(error){
    console.log(error)
});
var getProData2=getPromiseData(webRoot+"/foreManCenter/getForeManBasic",{"userId":obj.userId},true,"POST");
getProData2.then(function(data){
    console.log("data",data);
    return getPromiseData(webRoot+"/foreManCenter/getForeManBasic",{"userId":obj.userId},true,"POST");
}).then(function(data2){
    console.log("data2",data2);
}).catch(function(err){
    console.log(err);
});

你可能感兴趣的:(JavaScript)