gpt4 book ai didi

javascript - Axios - 显示验证返回的错误是 [object Object]

转载 作者:行者123 更新时间:2023-11-30 19:07:49 24 4
gpt4 key购买 nike

在我的 api 中,我有:

$request->validate([
'firstname' => 'required',
'lastname' => 'required',
'username' => 'required|unique:users',
'email' => 'required|email|unique:users',
'password' => 'required'
]);

然后我在 axios with 上发现了错误:

.catch(error=>{
console.log("Error: " + error.response.data.errors)
})

但是它会给我:Error: [object Object]

如果我故意输入username已经存在于数据库中,然后将 catch 更改为

.catch(error=>{
console.log("Error: " + error.response.data.errors.username)
})

它将显示Username is already taken这是一件好事。

这意味着我必须手动指定 error.response.data.errors.<x error>为了显示消息,因为如果我输入 data.errors.username然后电子邮件是验证中的问题,控制台会说 Error: undefined这是有道理的,因为没有 data.errors.username但是data.errors.email .

有没有一种方法可以访问并显示返回的错误,而无需手动指定它?非常感谢!

最佳答案

为了显示错误对象值,请尝试使用返回一些数组的Object.values(errors)来获取它们,然后使用flat()方法来制作其中一个数组,最后使用 join() 方法连接该值,如下所示:

  console.log(Object.values(error.response.data.errors).flat().join())

关于javascript - Axios - 显示验证返回的错误是 [object Object],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58805470/

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