Сегодня я объясню, как создать собственный React Hook для модального компонента. Модальные компоненты довольно проблемны из-за проблем с доступностью и структурой в React. Модальные элементы имеют наложение на экране, которое имеет более высокий визуальный приоритет, чем все остальные элементы. Если бы мы использовали z-index, он должен был бы быть самым высоким. Однако это плохая практика, поскольку он глубоко вложен, а родительские элементы, находящиеся высоко в дереве, имеют приоритет CSS. Начнем с создания модального компонента React, который будет использовать пользовательский useModal. Для этого урока я буду использовать модальные окна Bloomer, вы можете установить их с помощью yarn add bloomer. Давайте рассмотрим простой модальный компонент ниже: Это довольно простой компонент для понимания, который помогает обернуть наши компоненты в функцию. Мы можем запустить его с помощью: Наш модальный компонент готов, давайте рассмотрим основную тему и посмотрим, как создать useModal Hook.