Порталы в React: Выходим за пределы.

Привет, друзья! Сегодня я хочу рассказать про довольно интересный инструмент в React - порталы.

Представим такую ситуацию: Вы используете React и сделали модальное окно, повесили его на абсолют и радуетесь. В компанию приходит новый разработчик, ничего не знает о вашей модалке и набрасывает overflow: hidden на родительский контейнер. Итог: модалка не отображается(или отображается криво), ваш код нужно переписывать. Решение есть - порталы.

Что такое порталы и для чего они нужны? Порталы - это механизм, который позволяет рендерить дочерние элементы в DOM-узел, находящийся за пределами DOM-иерархии родительского компонента. Это особенно полезно, когда родительский компонент имеет стили, такие как overflow: hidden или z-index, но вам нужно, чтобы дочерний элемент визуально выходил за рамки своего контейнера, например, для модальных окон, всплывающих карточек и подсказок. Чаще всего, такие элементы стараются переместить ближе к body, чтобы их точно ничего не могло перекрыть.

Прикрепляю ссылку на документацию: https://react.dev/reference/react-dom/createPortal

А что вы думаете насчет использования порталов в React? Поделитесь своим мнением.

Кстати, я ищу работу фронтенд-разработчиком на частичный рабочий день. Если вам интересно, то напишите мне в личные сообщения:)

#фронтенд #react #frontend #js #веб #порталы #инструменты