gpt4 book ai didi

javascript - 当我调用异步函数时等待返回未定义?

转载 作者:行者123 更新时间:2023-11-30 20:14:32 26 4
gpt4 key购买 nike

所以在 main.ts 中,我试图调用类方法 processResponse 从处理程序中获取数据,但它总是返回 custObject undefined 甚至没有进入 processResponse 函数,下面代码中的错误是什么?

主要.ts

private async custResponse(data: any): Promise < any > {
const custObject = await RequestResponseHandler.processResponse(data);
return custObject;
}

处理程序.ts

public static async processResponse(data: any): Promise<any> {
let response: any = {};
console.log("Data>>..>>>>", data); // undefined
try {
if (data.Header.StatusCode === "0000") {
response = data.Details;
const tokenId = await this.cacheResponse(response);
response.Header.tokenID = tokenId;
return response;
}
} catch (err) {
return data;
}

}

最佳答案

由于您的 console.log("Data>>..>>>>", data);undefined 这意味着问题出在上游某处。您没有将数据参数中的任何内容传递给此方法。尝试检查调用 custResponse 方法的位置,看看数据是否真的被传递了(可能没有)。

至于未定义的返回,在您的代码中,如果状态代码不正确(在 try block 中),您将不会返回任何内容。尝试在最后放一些返回。

public static async processResponse(data: any): Promise<any> {
//....
//try catch stuff...
//....
return data //or something else

}

关于javascript - 当我调用异步函数时等待返回未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52062567/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com