1 回答
TA贡献1856条经验 获得超11个赞
promise是好用的,我用promise改造了下你的代码
reject 的情况没考虑,你再改改吧
function getFirst(item) {
return new Promise(function (resolve, reject) {
$.ajax({
url: '/web/sendsms',
data: {
key: item
},
traditional: true,
success: function (data) {
if (data && data.code !== 700) {
resolve(getSecond(data));
}
}
});
})
}
function getSecond(item) {
return new Promise(function (resolve, reject) {
$.ajax({
url: '/web/sendsms/name',
data: {
name: item.key
},
traditional: true,
success: function (data) {
if (data && data.code !== 700) {
resolve(data)
}
}
});
}
}
var promises = ['a', 'b', 'c', 'd', 'e'].map(function (item) {
return getFirst(item);
});
Promise.all(promises).then(function (datas) {
console.log(datas)
}).catch(function (reason) {
// 这里没写 reject,自己试着写一下吧
});
添加回答
举报