我有一个简单的方法,可以对API进行Axios调用。调用该方法不会返回任何内容,没有日志,没有错误消息。
async disable(product: Product): Promise<void> {
try {
const response = await this.axios.put(`products/update`, {
data
}).then(value => {
return value.data;
}).catch(error => {
console.log(`error: ${JSON.stringify(error)}`);
});
return response;
} catch (e) {
console.log(e);
}
}
await disable(product)
答案 0 :(得分:0)
您的代码有些错误:
await disable(product)
不会打印任何内容data
的来源。我认为它是某个东西的占位符,但是如果不是,并且您想发送产品,则应该在其中写上它。我建议您这样重写它:
async disable(product: Product): Promise<any> { // or the type that you expect
try {
const response = await this.axios.put(`products/update`, {data}); // Dont mix Promise and async/await syntax, if avoidable
return response.data; // return the response data directly
} catch (e) {
console.error(`error: ${JSON.stringify(error)}`);
throw e; // rethrow error or return null, if the request failed
}
}
const result = await disable(product);
console.log(result); // Print the result, to see what you are getting
此外,下次还有一些技巧可以解决此类问题: