@sinevik

Почему не работает arr.map?

Написал в реакте вот такой код
Первый консоль лог выдает нормальное значение. То есть данные с API пришли и все нормально
Почему когда я пробегаюсь по этому массиву, оно значение etag пишет 2 консоль лог пишет undefined

5a09fb85a885f232577606.png
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Потому что вызов setState - асинхронный и ваш объект state получает новые значения не сразу. Либо передавайте в setState колбэк и в нём делайте нужные операции, либо просто работайте с теми данные, которые записали в state напрямую (arr.map(...)).

P.S. Выкладывайте в будущем код текстом.

P.P.S.
Первый консоль лог выдает нормальное значение.

console.log работает со ссылками на объекты, поэтому когда вы массив разворачиваете, то видите не то, что там было на момент вызова, а то, что в нём лежит сейчас. Поэтому и кажется, что первый вызов отработал нормально.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы