Как напечатать ответ проверки Laravel 5.5 в in axios

Мой код работал на Laravel 5.4 и при обновлении он не работает. Затем я попытался увидеть возвращенный объект ответа в сети.

Это то, что я вижу

{message: "The given data was invalid.",…}
errors:{userName: ["The user name has already been taken."], email: ["The
email has already been taken."]}

В моих аксио я пытаюсь утешить сообщение «Имя пользователя уже занято» и «Электронная почта уже занята».

Но я показываю неопределенное. Вот мой код

.catch(function (error) {
// This shows undefined.
console.log(error.errors]);
});

Полный объект

{
"message": "The given data was invalid.",
"errors": {
"userName": [
"The user name field is required."],
"email": [
"Email is required!"],
"password": [
"The password field is required."],
"lastName": [
"The last name field is required."],
"userType": [
"The user type field is required."]
}
}

0

Решение

Проверьте свой ответ в .then, как это

.then(function(response) {
console.log(response.data.errors);
});
1

Другие решения

значение ответа, переданное Axios, будет иметь data поле, которое будет содержать ваши значения. Так что ваш код должен быть

.catch(function (error) {
// This shows undefined.
console.log(error.data.errors);
});
1

Спасибо за помощь всем вам. Я решил это с твоей помощью. вот как я это сделал.

 .catch(error => {
console.log(error.response.data.errors.email[0])
});
0
По вопросам рекламы [email protected]