Nivaech
@Nivaech
фотограф, видеограф, графический дизайнер

Как проверить есть ли объект в массиве в JSX?

Есть страница с товарами, которые можно добавить в корзину, cart.
cart - отдельный state массив с объектами, в который добавляются выбранные товары.
Я хочу сделать условие, при котором бы проверялось наличие товара в корзине, и если он там есть, то на странице товара бы отображалась соответствующая фраза.
Условие такое. Оно проверяет, есть ли в массиве предмет с соответствующим id, и если есть, то рендерится определенная надпись.
<div>
                          {
                            cart.find(item => (item.id === id) ?
                              <p>I am in</p>
                              :
                              <p>I am not in</p>
                            )
                          }
                      </div>


Но это не работает. Ловлю ошибку:
Objects are not valid as a React child (found: object with keys {id, title, price, category, type, description}). If you meant to render a collection of children, use an array instead.
Как это исправить?
  • Вопрос задан
  • 59 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
<p>{cart.find(item => item.id === id) ? 'я есть' : 'меня нет'}</p>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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