【发布时间】:2022-04-16 06:05:34
【问题描述】:
我的 React 应用程序中有条带异步代码,并试图在我的代码中添加错误处理,但不知道如何处理它。我知道如何使用 .then() 但 async/await 对我来说是新的
已编辑
添加了 .catch() 我在响应选项卡中的网络选项卡中出现错误。 但我可以将其记录到控制台?
submit = async () => {
const { email, price, name, phone, city, street, country } = this.state;
let { token } = await this.props.stripe
.createToken({
name,
address_city: city,
address_line1: street,
address_country: country
})
.catch(err => {
console.log(err.response.data);
});
const data = {
token: token.id,
email,
price,
name,
phone,
city,
street,
country
};
let response = await fetch("/charge/pay", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(data)
}).catch(err => {
console.log(err.response.data);
});
console.log(response);
if (response.ok)
this.setState({
complete: true
});
};
谢谢
【问题讨论】:
-
您要处理哪些错误?请告诉我们你会如何使用
then。 -
@MattWay 恰恰相反 - 如何在
async/await语法中catch。 -
请看更新的问题
-
在catch部分,试试console.log(error)。只是一个建议,试试看。
-
console.log 在第二个 .catch 给我在网络选项卡和响应选项卡我有 {"name":"Name field is required","email":"Email is invalid","phone" :"Phone field is required","city":"City field is required","street":"Street field is required","country":"Country field is required"} 可以,但是如何访问呢? ?显示在前端?
标签: javascript reactjs asynchronous fetch