ТОПОВА МОДАЛКА на REACT за 6 хвилин

Поделиться
HTML-код
  • Опубликовано: 28 май 2024
  • #frontend #development #react
    Привіт, я Нік і ти на каналі Dev Routine!
    Посилання на проект з відео: github.com/SemX74/modal-tutorial
    Стеж за нами в телеграмі: (Корисні пости і меми): t.me/+giZ-rijhq7BiZGEy
    Дивись наш тікток: / dev.routine
    Лайк та коментар, якщо відео було тобі корисно!
    Таймкоди:
    0:00 - Інтро
    0:18 - Пишу модалку
    6:11 - Заключення
  • НаукаНаука

Комментарии • 54

  • @AndrewFloatrx
    @AndrewFloatrx 21 день назад +3

    лайк від помідора... правда переглянув на х2, але ніби косяків не було ))) ну і мінорні зауваження: обгортати можемо не тільки в div, а й призначений для цього тег dialog (є такий в html); також вічна наша проблема з "стрибанням" контенту на 3:55 вирішується в css: `scrollbar-gutter: stable;` (а ще можна написати щось накшталт body:has(.modal){ overflow: hidden; } і буде працювати так само ); в tailwind є compound класс який призначений для overlay: inset-X; не зустрічав на практиці, щоб робили для Portal окремий компонент, перший варіант був більш канонічний; по анімаціям рекомендую глянути framer-motion (то реально махіна можливостей)! Удачі.

    • @itsDevRoutine
      @itsDevRoutine  21 день назад +1

      Чувак я безмежно вдячний за твої коменти, все записую. Не так багато маю досвіду але стараюсь поресьорчити те що говорю і донести у цікавому форматі. Ще раз. Дякую💪
      p.s. Бачив у mantine портал винесений в схожий компонент, тому й сам так часто роблю :)

    • @ALeXSagittarius
      @ALeXSagittarius 6 дней назад +1

      @@itsDevRoutine а чи треба було там оверфлоу міняти? поінтер-евентсами не обійтись?

  • @seva6095
    @seva6095 20 дней назад +2

    Короч мужик, за 2 години розібрав, перелопатив код по 10 разів, мужик, просто, щастя тобі, здоровля, я чистєйшого і крутєйшого коду в житті не бачив, там на стільки продумані штуки ти використовуєш, я просто ашалєл, в 6 хв відео інфи більше чим в якомусь продвинутому 3-х годинному курсі, я ніби практики трохи маю, але після твоїх відосів думаю хоть би моїх проєктів ніхто не бачив🥲
    Класно дуже з пропсами працює, розгортаєш прям в тегу всі атрибути, і розширюєш типи в інтерфейсах, я до такого не додумався))
    Про tailwind знав, але щось не наважувався на ньому писати, а тут прям на рпактиці побачив, сподобалось, і ще можна кастомні класи в ньому писати.
    Також clsx і classNames дуже корисна штука, задовбало кожеш раз модульні класи в {`${s.class} ${s.class2}`} писати, але правда ще не розібрав яка між ними різниця.
    Ще createPortal здивувало, не знав що з іншими індексними блоками окрім "root" можна таким чином взаємодіяти.
    Ось такі стилі як overscrollBehavior, дуже корисні.
    А ще Object.assign прост пушка, деколи багато вкладених компонентів є, і це все в index файл запихаю (ніби глобальний інтерфейсь називається, або то я придумав таку назву😅), а потім шукай.
    А ця штука document.body.style.overflow = open ? "hidden" : "auto"; завжди дував як то правильно зробити😅
    А відео з useCallBack і memo дуже класно пояснено, дякую.
    Відосик і код хоч коротенькі вийшли, але там такий концентрат інфи, просто моя повага

    • @itsDevRoutine
      @itsDevRoutine  20 дней назад +1

      Чувак я вдячний тобі за твою роботу і твою підтримку, залишайся з нами і тебе чекає більше крутого та нового 😎

  • @user-tn3uo6tr3t
    @user-tn3uo6tr3t 16 дней назад

    Дякую за контент. Прекрасна модалка. Проте інколи все ж швидше використати вже готову, або свою яку колись вже створив, або чиюсь.

  • @YaroslavEx
    @YaroslavEx 22 дня назад +1

    топ, дякую

  • @black_light
    @black_light 20 дней назад

    Дякую за модалочку. Заюзав в петпроджект)

  • @user-lb6lq5yh5q
    @user-lb6lq5yh5q 6 дней назад

    Чел ты просто гений...

  • @neonscandy9272
    @neonscandy9272 22 дня назад +1

    Я ще не чекнув, але лайк влуплю за новий ролик

    • @itsDevRoutine
      @itsDevRoutine  22 дня назад

      так воно має робитися, дякую!🤘

  • @chevstyle
    @chevstyle 9 дней назад

    Так як в хуці useModal є стейт, а в свою чергу хук лежить в самому верху, хіба це не означає, що буде рендеритися геть все?

    • @itsDevRoutine
      @itsDevRoutine  9 дней назад +1

      в тебе в любому випадку буде стейт де ти будеш хендлити стан модалки в самому верху - все буде ререндиритись.
      В любому випадку всі компоненти будуть в memo в React 19, і цієї проблеми не буде

  • @andreievvv
    @andreievvv 22 дня назад +2

    Топовий відос👍

  • @hasst9261
    @hasst9261 22 дня назад +2

    Нормальний контент

  • @seva6095
    @seva6095 20 дней назад

    Привіт, міг би зробити обзор на типи якими ти розширюєш interface, такої інфи в ютубі дуже мало, зазвичай всі розказують як просто типізувати пропси, або змінні. Це було би дуже корисно, так як приходиться набагато більше писати типів в інтерфейсі, і вони розростаються, особисто в мене до великих масштабів, це би зекономило багато часу, був би дуже вдячний за такий матеріал!

  • @Broman-er4ni
    @Broman-er4ni 12 дней назад

    Маю питання з приводу порталу. Якщо використовувати Link(react-router-dom) в середині модалки з порталом, то свариться, що подалка поза контекстом чи щось таке. Чи є ідея як то пофіксити?

    • @itsDevRoutine
      @itsDevRoutine  12 дней назад

      спробуй useNavigate() з тієї ж ліби

    • @Broman-er4ni
      @Broman-er4ni 12 дней назад +1

      @@itsDevRoutine ну як варіант виглядає непогано, дякую.

  • @andriyleliv4608
    @andriyleliv4608 22 дня назад

    Класно, моцний лайк.
    Є така цікава річ коли в проєкті потрібно використовувати різнотипні модалки, які викликаються з різних місць і потрібно якось їх менеджити (через глобал стейт і так далі, також однотипних може бути кілька одночасно на екрані - але з різним контентом.
    Може цікаво буде таке зробити - я думаю глядачі бyдуть в захваті.

    • @itsDevRoutine
      @itsDevRoutine  21 день назад

      дякую за ідеї та за лайк!

  • @CryptoBro7
    @CryptoBro7 22 дня назад +1

    за сеньйорів помідорів лайк!

  • @rusoiob5946
    @rusoiob5946 22 дня назад

    броскі, що за тема у VSCode? 💅

    • @itsDevRoutine
      @itsDevRoutine  22 дня назад +1

      Це CodeSandbox Black у виконанні Ziady Mubaraq. Використовую вже років так 2)

    • @rusoiob5946
      @rusoiob5946 21 день назад

      @@itsDevRoutine дякую 🤗♥️

  • @andreievvv
    @andreievvv 22 дня назад

    Було б цікаво побачити відео про підключення оплати на сайт🧑‍💻

    • @itsDevRoutine
      @itsDevRoutine  22 дня назад +1

      в майбутньому обовʼязково буде)

  • @itsDevRoutine
    @itsDevRoutine  22 дня назад +1

    Який формат розповіді вам сподобався найбільше?

    • @andriyleliv4608
      @andriyleliv4608 22 дня назад

      Які є варіанти?

    • @itsDevRoutine
      @itsDevRoutine  21 день назад

      @@andriyleliv4608 запис де код був окремо записаний від коментарів (саме це відео), або коли код пишеться з коментарями одночасно (попереднє відео)

    • @timlftv
      @timlftv 18 дней назад

      @@itsDevRoutine цей варіант кращий як на мене

  • @resoursa
    @resoursa 22 дня назад

    🔥🔥🔥🔥

  • @maxym922
    @maxym922 22 дня назад +2

    го tooltip по сінйорному)

    • @itsDevRoutine
      @itsDevRoutine  22 дня назад +1

      По сінйорному не впевнений але можемо організувати 😁

  • @dr.Dramen
    @dr.Dramen 22 дня назад +1

    Привіт, в тебе є linkedin?

    • @itsDevRoutine
      @itsDevRoutine  22 дня назад

      Привіт, тримай (я його не особо веду)
      www.linkedin.com/in/cssemenyuk/

  • @antonpodkur3520
    @antonpodkur3520 22 дня назад

    Лайк

  • @vty4261
    @vty4261 15 дней назад

    Як ж в мене горить від цих index файлів. Ну кааааамон, краще один додатковий файл замість щоб двічі написати слово Modal? Вам що руки від того відсихають?? Тим більше ж авто імпорти є в ВСКоді. Чи налаштуйте собі аліаси...Крик душі просто

    • @itsDevRoutine
      @itsDevRoutine  15 дней назад

      кожному свій смак і колір

  • @analdestr0yer
    @analdestr0yer 20 дней назад +1

    Нахіба це взагалі треба, якийсь манкі-кодинг

    • @denys.matsevych
      @denys.matsevych 20 дней назад

      де саме манкі код?

    • @analdestr0yer
      @analdestr0yer 19 дней назад

      @@denys.matsevych У відео. Ви дивились? Все там зрозуміло?

    • @itsDevRoutine
      @itsDevRoutine  18 дней назад

      Якщо вже критикуєш, пропонуй як зробити краще будь ласка і скажи що саме не зрозуміло, анал дестроєр
      В дописі є посилання на проект якщо щось пропустив, там можна розглянути код детальніше і подивитись як працюють деталі які ти не зрозумів

  • @liganshow
    @liganshow 21 день назад

    Сказал react.createPortal, а импортнул из react-dom. Trololo😂

    • @liganshow
      @liganshow 21 день назад

      Чувак. У тебя еще когда ты добавил контента в основной странице и появился скрол, то когда ты тоглил модалку, контент прыгал, так как овервлоу хиден убирал скрол и потом он снова появлялся , что мелочь но ебет глаз все равно)

    • @itsDevRoutine
      @itsDevRoutine  21 день назад

      бля, я записую це в 1-2 ночі після роботи, не души 😂

    • @user-yk6iq5hn4d
      @user-yk6iq5hn4d 18 дней назад

      ​@@itsDevRoutine можно использовать scrollbar-gutter: stable для body, контент перестанет прыгать