Задать вопрос
@sinevik

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

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

5a09fb85a885f232577606.png
  • Вопрос задан
  • 209 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Frontend-разработка на React
    10 недель
    Далее
  • Академия Эдюсон
    React-разработчик + ИИ
    2 месяца
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега React
Потому что вызов setState - асинхронный и ваш объект state получает новые значения не сразу. Либо передавайте в setState колбэк и в нём делайте нужные операции, либо просто работайте с теми данные, которые записали в state напрямую (arr.map(...)).

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

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

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

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

Похожие вопросы