NMTEG
@NMTEG
Почти junior :)

Как указать активность элемента?

const typeNames = ["тонкое", "традиционное"];
const [activeType, setActiveType] = React.useState(0);

          {types.map((typeId) => (
            <li
              key={typeId}
              onClick={() => {
                setActiveType(typeId);
              }}
              className={activeType === typeId ? "active" : ""}
            >
              {typeNames[typeId]}
            </li>
          ))}


Есть компонент в React JS, который рендерится с помощью map() из массива JSON(), types может содержать одно или сразу два из этих выражений: [0, 1].
В карточке пицц это значение определяет на какой из пункт навешивается active, которое подсвечивает необходимый button.
628181a7585c2358007704.jpeg
Но есть types, которые приходят лишь со значением [1], в нашем случае "традиционное":
62818247d46fd710311224.jpeg
Как мне навесить внутри рендера на такую карту active?
  • Вопрос задан
  • 102 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега React
В качестве дефолтного значения для activeType указывайте не 0, а нулевой элемент из types:

React.useState(0); ---> React.useState(types[0]);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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