我有一个异步函数,可以从 API 获取 json,然后在 Node.js 中返回它。本质上,
export async function getThing(URL){
let res = await fetch(URL);
let data = await res.json();
return data;
}
据我了解,这应该返回一个 promise 。在调用函数中,我将其分配给一个变量,然后将其他变量分配给它的属性,并用它们构建一个对象。
async function dostuff(){
let inner = await exportedfile.getThing(URL);
let gamedescription = inner.propertyOfInner;
}
这似乎工作成功,使用正确的字段构建对象。然而,与此同时,每次我这样做时它都会抛出错误,阅读
未捕获( promise 中)类型错误:无法读取未定义的属性“propertyOfInner”
即使它显然正在成功读取该属性。因此,虽然在 promise 解决时正确填充了字段,但显然我做错了什么。读取包含在 Promise 中的对象的属性的正确方法是什么?
最佳答案
未捕获( promise 中)类型错误:无法读取未定义的属性“propertyOfInner”
上述错误意味着您无法从未定义的位置访问“propertyOfInner”,这意味着您的“内部”变量在某些时候未定义。
我建议您按如下方式访问属性
if (inner) {let gamedescription = inner.propertyOfInner;}
关于javascript - 读取包含在 promise 中的对象的属性的正确方法是什么? (获取类型错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55733841/