[英]javascript: async function not returning fetched object from API but instead returns [object promise]
我正在尝试从 API 获取数据,我尝试按照本教程进行操作,但它一直返回[Object Promise]而不是带有课程 ID 的 object。 当我在控制台中测试它时,fetch function 工作正常,但它没有将变量“subject”设置为返回的数据。 有没有需要修改的部分? 谢谢
本地主机:1337/主题/
[{
"id": 1,
"name": algebra",
"time": "TUES|2PM",
"instructor": "Alex Smith"
},
{
"id": 2,
"name": "biology",
"time": "WED|2PM",
"instructor": "Carl James"
}]
脚本.js
async function getSub(courseid) {
async function getSubject(courseid) {
var url = 'http://localhost:1337/subjects/'+courseid;
let response = await fetch(url, {method: 'GET'});
let data = await response.json();
return data;
}
const subject = await getSubject(1); //returns [object Promise] not object with id=1
}
从另一个 js 文件调用这个 function
const info = await script.getSub(1);
调用async
function 时应该使用await
:
function getSubject(courseid) {
var url = 'http://localhost:1337/subjects/'+courseid;
return fetch(url, {method: 'GET'});
}
var subject = await getSubject(1);
console.log(subject)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.