Причина, по которой вы не можете прочитать data.status
, заключается в том, что data
не определено.
Чтобы получить данные и статус, вам нужно вернуть res
, чтобы он был доступен в следующие .then
Изменить это
.then(res=>console.log(res)) // data comes from the return of this function
.then(data => { if(data.status == 200){ history.push('/home');}})
К
.then(res => {
console.log(res)
return res // data comes from the return of res
})
.then(data => { if(data.status == 200){ history.push('/home');}})
Если вы не вернете что-то из .then
, следующий .then
параметр функции будет неопределенным.
Перефразируя этот ответ
Когда вы возвращаете что-то из обратного вызова then (), это немного волшебно. Если вы возвращаете значение, вызывается next then () с этим значением.
В вашем случае вы возвращаете console.log(res)
, у которого нет status
свойства