// 首先定义了一个同步方法
async checkProjectAbbreviationExists(params) {
return await axios.get(`/by/ProjectPage/checkProjectAbbreviationExists`, {params});
}
// 此处调用同步方法,但是没法实现同步效果
checkProjectAbbreviationExists: function () {
let p = service.checkProjectAbbreviationExists({
formId: this.infoForm.formId,
name: this.infoForm.name,
});
p.then((data)=>{
console.log("------2------------");
return false;
});
console.log("---------1--------");
return true;
}
// 结果:先输出1,再输出2
我这边需要实现一个同步方法,但是axios好像无法实现这种效果
我需要获取请求返回的数据,就必须使用then,那就变成异步的了
axios 不支持同步,他就是异步方案。
async/await 也是异步方案。
如果你要完成的功能是按顺序回调,那就使用:
其他的 可以考虑使用ajax 把async配置项改为false,就能实现同步