// 在ES6中可以将多个Promise.all异步请求并行操作:
// 1、当所有结果成功返回时按照请求顺序返回成功;
// 2、当其中有一个失败方法时,则进入失败方法;
let promiseUtil = (url)=>{
return new Promise(function (resolve,reject) {
$.ajax({
"type": "get",
"url": url,
"async": "true",
"success": function(res) {
resolve(res);
},
"error": function(err){
reject(err);
}
})
})
.then( data => data)
.catch(e => e);
}
// 使用Promise.all发送请求
// 如果中间有一个失败,则进入失败方法
Promise.all([
promiseUtil('http://www.baidu.com'),
promiseUtil('http://www.g.cn'),
]).then((data)=>{
// 执行成功
console.log('请求成功:');
let [ data1, data2 ] = data;
console.log(data1, data2);
}, (error)=>{
console.log('请求失败:')
console.log(error);
})
ES6异步请求并行操作
最新推荐文章于 2022-08-17 16:21:16 发布