Если вы хотите сделать условный рендеринг в JSX, у вас есть несколько методов:
- Ветвление внутри функции
map
обратного вызова
array.map(item => {
if (!condition) {
return null;
}
return <Component {...props} />;
});
Ветвление внутри функции рендеринга компонента (аналогично методу 1) Вызов
array.filter
перед
map
(каждый раз будет создаваться новая копия отфильтрованного массива) Inline Если с логическим оператором &&
array.map(item => condition && <Component {...props} />);
Встроенный If с условным (троичным) оператором
array.map(item => condition? <Component {...props} />: <SomethingElse />);
===========
Если вы хотите, чтобы условие было обновлено некоторыми событие происходит во внутренних компонентах, используйте событие prop
<CardComponent onClick={() => { /* do something with your game state */ }} />