Задать вопрос
@arttstyle
web-макака

Как запустить async функцию внутри map?

{items.map((el) => {
        return (
          <>
            <div className={css.product}>
              <div className={css.productImage}>
                <img src={getImage(el.id)} />
              </div>
              <ProductGalleryLarge {...el}/>
            </div>
          </>
        );
      })}

хочу вот здесь <img src={getImage(el.id)} /> запустить асинхронную функцию которая добывает мне картинку превью
(функция получает картинку из firestorage поэтому прямых ссылок на картинки нет и вставить в объект нереал)
как это сделать?
  • Вопрос задан
  • 96 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
Alexandroppolus
@Alexandroppolus
кодир
<img src={getImage(el.id)} /> поместить в отдельный реактовский компонент, например, StorageImage. Далее возможны различные варианты в зависимости от того, что используется на проекте. Наиболее простой - useQuery - это обеспечит кэширование и обновление стейта из коробки, и все остальные детали, прям вот всё что нужно для данного кейса.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽