@LaTherapist

Как добавить/удалить класс по клику в реакте?

https://jsfiddle.net/rafm8ue9/

Делаю подобную галерею с фильтрацией с помощью реакта.
При клике отфильтровать картинки получилось.

А вот с добавлением/удалением класса с определенного фильтра по клику - беда.
Подскажите, пожалуйста.
  • Вопрос задан
  • 332 просмотра
Пригласить эксперта
Ответы на вопрос 2
@seropaski
Что насчет сделать список всех картинок с указаниями типа изображения + сделать стейт для хранение текущего выбранного типа изображения, а после рендерить по списку изображений компонент картинки и в него прокидывать выбранный тип, после чего в компоненте картинки принимать уже решение - рендерить ли изображение или вернуть null?

Как по мне, это более реактовский подход решения задачи, нежели добавление и удаление классов у элементов дом дерева
Ответ написан
Комментировать
@LaTherapist Автор вопроса
https://jsfiddle.net/4jqsd29p/1/

Это то, что я пытался делать.
При клике выполняется функция, сортирующая картинки.
Но если я пытаюсь использовать useState, как внизу, то класс присваивается всем фильтрам.
Не знаю, как это исправить.

Также пытался добавить класс active через свойство массива объектов, но тоже как-то не очень.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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