promise 第二个接口如何使用第一个接口返回的数据?
第二个接口使用第一个接口返回的数据name
,再拼接处理,不用promise.all 不用全局变量。求解?
function ajax(url,datas){
return new Promise((resolve,reject) => {
$.ajax({
url:url,
type:"post",
dataType:"json",
data:datas,
success:function(data){
resolve(data);
},
error:function(error){
reject(error);
}
});
});
}
ajax('data/data.json',{'name':"1"}).then((json) => {
console.log(json);
let name = json.bean;
return ajax('data/data1.json',{"age":30,"name":json.bean},json.bean);
}).then((data) => {
console.log(data.bean + name);
}).catch((error) => {
console.log(error.returnMessage);
});
修正后的:
function ajax(url,datas){
return new Promise((resolve,reject) => {
$.ajax({
url:url,
type:"post",
dataType:"json",
data:datas,
success:function(data){
resolve(data);
},
error:function(error){
reject(error);
}
});
});
}
ajax('data/data.json',{'name':"1"}).then((json) => {
let name = json.bean;
let _ajax = ajax('data/data1.json',{"age":30,"name":json.bean});
return{
name:name,
ajaxData:_ajax
}
}).then((data) => {
data.ajaxData.then((v) => {
console.log(data.name + v.bean);
})
}).catch((error) => {
console.log(error.returnMessage);
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
把
name
定义在外面