如何解决异步等待模块包括axios返回Promise
这是我的代码
main.js
// main.js
const calc = require('./calc');
const calcInfo = calc.getCalcInfo();
console.log('calcInfo:',calcInfo); // I expect wait until response data
和calc.js
// calc.js
import axios from 'axios';
const getCalcInfo = async () => {
let resultData = await axios.post('/api/logis/getCalcInfo',{});
console.log('getCalcInfo',resultData);
return resultData;
}
export {
getCalcInfo,}
结果日志
calcInfo: Promise {<pending>}__proto__: Promise[[PromiseStatus]]: "fulfilled"[[PromiseValue]]: Object
calc.js:6 getCalcInfo {data: {…},status: 200,statusText: "OK",headers: {…},config: {…}, …}
我希望日志“ calcInfo”将显示axios响应的数据。但这就是Promise的回报。
是否有解决此问题的方法?
编辑: 谢谢您的回复! 但我还有一个问题。
这是修改后的代码。 相同的main.js和calc.js
const getCalcInfo = () => {
axios.post('/api/logis/getCalcInfo',{})
.then((result) => {
return result;
});
}
结果在这里:
calcInfo: undefined
所以我不使用异步(但axios可能正在使用)。 但是调用getCalcInfo的结果是不确定的。
为什么这样工作?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。