Захватите ответ asyn c ax ios call в реаги - PullRequest
0 голосов
/ 18 апреля 2020
 async  saveForm(data) {
     return await axios({
       method: "post",
       url: FORM_PORTAL_CONTROLLER_URL + 'savemoratorium',
       body: JSON.stringify(data)
    }).then(res => 
        this.setState({ refNo: res.data.reference }))
  }

Я не могу установить установленное состояние, которое я получаю из запроса, который выдает мне ошибка ниже. Запрос Post выполняется отлично. Я хочу захватить ответ и и изменить state.function находится внутри компонента. Следующие ошибки находятся в консоли страницы, и после этого я получаю белую страницу.

act_devtools_backend. js: 6 TypeError: Невозможно прочитать свойство 'length' неопределенного response-dom.production.min. js: 152 Uncaught (в обещании) TypeError: Невозможно прочитать свойство 'length' из неопределенного

Ответы [ 2 ]

0 голосов
/ 20 апреля 2020

Я нашел причину root для этого случая. Это потому, что у меня был конфликт с модулем UI. (MakeEffect, useEffect)

0 голосов
/ 18 апреля 2020

Добавить проверку перед рендерингом

// Sample 1

      if(Array.isArray(refNo) && refNo.length){ 
        //your code
       }

//Sample 2

      {Array.isArray(refNo) && refNo.length? customRenderFunction(): null}
...