Я новичок, чтобы реагировать, и у меня есть вопрос о лучшей практике, которая видит, что я делаю ошибку. Я вызываю API для извлечения информации и изменения массива в состоянии, когда API возвращает ответ. В «render» я должен получить информацию из этого массива (когда он будет завершен) или возвращает мне ошибку, потому что массив пуст при инициализации рендеринга.
class MyClass extends React.Component {
constructor(props) {
super(props)
this.state = {
activeIndex: 0,
items: []
}
}
componentDidMount() {
axios
.get(`API_ADDRESS`, {
headers: {
Authorization: `Token XXX`,
},
})
.then(function(response) {
this.setState({
items: response.results,
})
})
.catch(error => {
notification.warning({
message: error.code,
description: error.message,
})
})
}
changeDialog = (e, index) => {
e.preventDefault()
this.setState({
activeIndex: index,
})
}
render() {
const { activeIndex, items } = this.state
const {
first_name: firstName,
last_name: lastName,
phone,
email,
address,
} = items[activeIndex]
Ошибка указывает:
Ошибка типа: _items $ activeInde не определена
Как можно решить эту ошибку, связанную с загрузкой данных? (пытается сохранить метод уничтожающих элементов)
Большое спасибо, Элиотт