Создадим модальное окно с помощью Портала в Реакте. Постараемся разобраться, что такое Portal и для чего он появился в React.
Пікірлер: 17
@buba5712 ай бұрын
Большое спасибо ❤. Вы продемонстрировали работу функционала лучше и подробнее, чем многие объясняют про отдельные функции, которые тут используются.
@gom-jabbarАй бұрын
Отличный урок , все усвоил!
@AbubakirNumandjanov4 ай бұрын
Вам огромное спасибо
@someChicoRy7 ай бұрын
Круто, спасибо
@Игорь-г8з3к11 ай бұрын
Пушка, только шрифт побольше)
@vzonemax10 ай бұрын
Спасибо за видео. Я так понимаю, что портал также может решить проблему излишнего дриллинга пропсами / ререндеринга?
@Learn_JS9 ай бұрын
Для решения проблемы излишнего дриллинга лучше использовать контекст или стэйт менеджер. Портал все-же про создание физического блока в разметке, в который можно рендерить контент. Если проблема с лишними рендерингами, то тогда мемоизация или изначально корректное проектирование.
@maksimvashkevich14299 ай бұрын
Насколько помню, затеняющий слой можно получить при помощи использования jsx тега dialog вместо div. Поправьте, если не так.
@Learn_JS8 ай бұрын
Можно использовать и вообще не делать портал, но тогда это решение не будет соответствовать теме ролика 😀
@maksimvashkevich14299 ай бұрын
Привет! Как ты смотришь на то, чтобы вместо создания лишней функции onClose просто передавать в модалку setModalOpen, а уже в самом компоненте при нажатии на кнопку закрывания модалки просто менять стейт на противоположный ( onClick={ () => onClose(prev => !prev) } )?
@Learn_JS8 ай бұрын
Не очень хорошо, так как сама модалка не должна знать, что там делается при закрытии, нам может понадобиться не только ее саму свернуть, но выполнить дополнительные действия.
@andreychiglintcew50248 ай бұрын
Подскажите, как вызвать меню выбора иконок ? 10:48 пример вставки х
@Learn_JS8 ай бұрын
На маке ctrl+cmd+space
@andreychiglintcew50248 ай бұрын
@@Learn_JS как круто! Огромное спасибо) с 2015 пользуюсь маком, но никогда не сталкивался с этой фишкой)
@RewCSharp8 ай бұрын
У меня одного ничего не работает при том, что я полностью повторил код?
@ant34134 ай бұрын
Учиться надо было, а не как ты в компуктер всю жизнь играл...а теперь не внимательный стал... Учи и не позорься тут...и все заработает у тебя Аливидерчи
@RamaRama-qv3jo9 ай бұрын
Если так углубленно рассмотрено создание модального окна, то стоило сразу показать хорошие практики и добавлять-удалять из DOM по клику элемент.