Почему axios.all () отправляет запросы не в массиве запросов? - PullRequest
0 голосов
/ 21 июня 2019

У меня есть функция обновления, которая обновляет три таблицы. Сначала я хочу проверить, а затем, если ошибок не возникло, запустить актуальный код обновления.

Как вы можете видеть из приведенного ниже кода, я создал метод обновления для построения объекта axios для моих запросов на обновление и один из ошибок для отправки на конечные точки проверки.

Когда я использую axios.all () для запуска трех запросов на проверку, он также отправляет запросы на конечные точки обновления, хотя я ни разу их не вызывал. Я не могу понять, почему это произошло. Кто-нибудь может увидеть, что здесь происходит?

updateMethod: function() {

   dataObj1 = {
      somekey: some value
   }

   axiosArray.push(this.updateAxios('model1', id1, dataObj1));
   errorsAxiosArray.push(this.errorsAxios('model1', dataObj1));


   dataObj2 = {
      somekey: some value
   }

   axiosArray.push(this.updateAxios('model2', id2, dataObj2));
   errorsAxiosArray.push(this.errorsAxios('model2', dataObj2));

   dataObj3 = {
      somekey: some value
   }

   axiosArray.push(this.updateAxios('model3', id3, dataObj3));
   errorsAxiosArray.push(this.errorsAxios('model3', dataObj3));

   axios.all(errorsAxiosArray)
       .then(axios.spread(function (res1, res2, res3) {
            //COMMENTED OUT CALL TO axios.all(axiosArray) etc...
       }))

},
updateAxios: function(model, id, data) {
   return  axios({
       method: 'put',
       url: '/' + model + '/' + id,
       data: data
   })
},
errorsAxios: function(model, data) {
   return axios({
        method: 'post',
        url: '/' + model + '/update_validation',
        data: data
   })
}

При выполнении нижеприведенного, с вызовом axios.all () к методам обновления, закомментированным, методы обновления по-прежнему работают, и я получаю 422 ошибки, которые нужно отловить методами проверки. Почему вызывается набор запросов axiosArray?

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