TypeError: Невозможно прочитать свойство 'status' из undefined при получении ошибок от проверки Laravel - PullRequest
0 голосов
/ 04 марта 2019

Я пытаюсь проверить форму через AJAX, используя Axios с vue.

axios.post('api/registro', this.sede)
.then(response => {

    this.$emit('cerrar')

})
.catch(err => {

    console.log(err)

})

Ошибка исходит от части catch, так как она исходит от валидатора Laravel.Ответ от сервера - 422. Он содержит JSON с сообщением и ошибками, которые отправляет сервер.

Все работает нормально, если я не пытаюсь зарегистрировать ошибку.

Ответы [ 2 ]

0 голосов
/ 04 марта 2019

Проблема исходила от того, что я использовал перехватчики в axios, я не возвращал ошибки перехватчиков должным образом, поэтому в функцию catch ничего не входило.

Вот что у меня было:

axios.interceptors.response.use(null, function (error) {
    // some logic
  });

И вот как это должно было быть:

axios.interceptors.response.use(null, function (error) {
    // some logic
    return Promise.reject(error);
  });

Большое спасибо всем за вашу помощь.

0 голосов
/ 04 марта 2019

Вы можете просто проверить наличие ошибок следующим образом: if(err.response.data.errors){ this.errors = err.response.data.errors; } this.errors будет массив, который вы можете перебрать, используя v-for для его отображения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...