169 похожих чатов

Если у меня 10 слов и при нажатии на одно

из них оно должно менять цвет на черный (будучи белым) и при этом все остальные должны переходить в белых кроме того на который нажали

Как правильнее все это реализовать?

Я сделал 10 стейтов и при клике передаю нужный стейт и перед этим мапом прохожусь (создал масив actions, actions = [setColor1, setColor2....]) и делаю все белым и потом уже по нужному стейту черным.

Как сделать по нормальному?

2 ответов

4 просмотра

Мэпать слова, навешать онклик Добавить стейт с айдишкой Менять эту айди при клике И добавлять какие-то стили если выбран этот айди

10 стейтов не норм. Я бы сделал компонент с пропсами и в каждом компоненте был бы свой стейт. Получилось бы те же 10 стейтов, но без дублирования логики. Ну а если очень хочется сделать умный и тупой компонент, то сделал бы функцию сетстейт, которая через спред оператор возвращает каждый раз новый объект при изменении какого либо цвета по его номеру/айди Отрисовка этих компонентов в таком случае делалась бычерез Object.values() или entries()

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

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
49
читать файл максимально быстро? странный вопрос))
zamtmn
53
How to create an OS in C? what to study?
Linus
18
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
5
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
@HemulGM Параметры у AddStream поменялись? Несостыковка какая-то
Катерина Свиридова
12
Подскажите, есть какие-то события создания/уничтожения у TFrame по типу TForm (OnCreate и OnClose/OnDestroy) ? Как отловить создание TFrame и "перед" уничтожением. На Tframe р...
Денис
8
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
а чем хуже?
Alexey Kulakov
10
Карта сайта