Как удалить активный класс с помощью щелчка в моем случае

#javascript #css #reactjs #onclick #modal-dialog

#javascript #css #reactjs #onclick #модальный диалог

Вопрос:

Я хотел создать галерею незашлифованных изображений и предоставить полноэкранное изображение, когда пользователь нажмет на маленькое изображение. Я создаю модальное окно, которое появляется, когда пользователь нажимает на маленькое изображение, и я хотел закрыть его, когда он нажимает на любое место в таком модальном окне. Я создаю анонимную функцию, которая должна изменить мой active на false, но когда я нажал, ничего не произошло.

Вот код — https://stackblitz.com/edit/react-jis6bz

Ответ №1:

App.js строка 26 вы должны очистить переменную modalActive, если вы нажимаете на элемент, который уже находится в modalActive

 App.js line 26:
     onClick={() => (
        modalActive === index ? setModalActive(null) : setModalActive(index) 
     )}
 

И это будет более чистый подход к коду, если onClick будет функцией с именем, а не анонимной, что-то вроде toggleActiveImage