Проверяет умение управлять условным отображением компонентов в React через состояние, что необходимо для интерактивных интерфейсов.
В React отображение элементов управляется состоянием. Чтобы показать или скрыть компонент по клику, нужно хранить булево значение в состоянии и переключать его при событии. React автоматически перерисует интерфейс при изменении состояния.
Используем хук useState для хранения флага видимости и функцию-обработчик для его переключения:
import { useState } from 'react';
function App() {
const [isVisible, setIsVisible] = useState(false);
return (
<div>
<button onClick={() => setIsVisible(!isVisible)}>
{isVisible ? 'Скрыть' : 'Показать'}
</button>
{isVisible && <p>Секретный контент</p>}
</div>
);
}Для скрытия без удаления из DOM можно использовать CSS-класс с display: none, но это не всегда оптимально, так как компонент продолжает существовать.
Условный рендеринг стоит использовать для модальных окон, аккордеонов, тултипов и любых элементов, которые появляются по действию пользователя. Если компонент тяжёлый, лучше удалять его из дерева, чтобы освободить ресурсы.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию