在我的 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.usernamebut data.errors.email。
有没有一种方法可以在不手动指定的情况下访问和显示返回的错误?万分感谢!