Как писать РЕЮЗАБЕЛЬНЫЕ UI компоненты? | ReactJS

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 พ.ย. 2024

ความคิดเห็น • 70

  • @aboutit6516
    @aboutit6516  3 ปีที่แล้ว +16

    Ребята, просьба, смотрите по возможности до конца - это позитивно влияет на продвижение) Всем спасибо!

    • @AlexSizovRun
      @AlexSizovRun 3 ปีที่แล้ว

      Настолько далеко провдинули, что ты оказался за пределами Ютуба)

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว

      @@AlexSizovRun где?)

  • @AlekseiBleile
    @AlekseiBleile ปีที่แล้ว +6

    лучше через пропсы прокинуть классы, чем расширять дерево на ровном месте

  • @chessclub92
    @chessclub92 ปีที่แล้ว

    Спасибо. Мне больше нравится когда мне говорят чего нельзя делать в программировнии, чем когда рассказивают что можно.

  • @dontletmewin
    @dontletmewin 3 ปีที่แล้ว +2

    Спасибо! Хотелось бы ещё!)

  • @toni4i696
    @toni4i696 2 ปีที่แล้ว +1

    Мне понравилось, пишу на реакте уже около полу года, интересно перенять чей-то опыт.

  • @ИванИванов-у3ч4м
    @ИванИванов-у3ч4м 3 ปีที่แล้ว +1

    Годно, нужно. Даёшь подобное по вёрстке и ui фреймворкам!

  • @maximhasp1
    @maximhasp1 2 ปีที่แล้ว +2

    Отличное видео, очень хорошо объясняешь, видос про формы нужен!

  • @Андрей-о7ш2д
    @Андрей-о7ш2д 3 ปีที่แล้ว +1

    спасибо за информацию, жду следующие видео.

  • @konstantin6524
    @konstantin6524 3 ปีที่แล้ว +1

    Посмотрел полностью и очень сильно хотел бы ещё!

  • @tyomalavr4757
    @tyomalavr4757 3 ปีที่แล้ว +2

    Самое первое про обёртку дивом ; я бы передавал в аргумент компоненты название класснейма и потом пропсами дописал бы в этой компоненте данный класснейм + основной класс который у всех компонент присутствует , и в стилях все как у тебя было бы этот маргин ; в этом случае пропсы как по мне неплохо смотрятся; не надо считай постоянно обворачивать дивами

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว

      Да, так тоже можно, но суть в том что стили по позиционированию это ответственность места которое использует коммон компонент, а не самого компонента. Хотя мне ближе по душе оборачивать, чтобы не прокидать и не лезть в компонент, более чистый вариант как по мне.

    • @Андрей-й9ц6я
      @Андрей-й9ц6я 3 ปีที่แล้ว

      @@aboutit6516 В подходе с пропсами стили по позиционированию будут в месте, которое использует компонент, а не в самом компоненте, с него снимается ответственность (и не надо в него лезть). Так же он хорошо работает с CSS Modules, достаточно использовать classnames и в компоненте на корневом элементе прописать className={cx('main', className)}. Минусом разве, что может быть снижение "инкапсуляции стилей", другой разработчик сможет в классе, который задумывался только для позиционирования задать и другие стили, которые меняют внешний вид, вместо продумывания интерфейса компонента. Вот примерно набросал как это может выглядеть codesandbox.io/s/frosty-water-bhggi?file=/src/Button.js

    • @UvarovDM
      @UvarovDM 3 ปีที่แล้ว +1

      Я бы дефолтные значения марджинов задал, и, при необходимости, оверрайдил бы их в пропсах при необходимости. Будет меньше кода гораздо.

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว

      @@UvarovDM да, я так делал, было очень больно потом) Поэтому пришел к выводу что лучше внутри вообще стили по позиционированию не задавать, это просто сильно чувствуется на больших сложных проектах. Когда и так проблем с бизнес логикой хватает, и хочется чтобы UI проблем поменьше было.

  • @mistrebrown7642
    @mistrebrown7642 11 หลายเดือนก่อน +2

    Видимо, второго видео уже не дождёмся... А жаль, материал очень полезный!

  • @ОльгаДовбуш-н1з
    @ОльгаДовбуш-н1з 2 ปีที่แล้ว

    Дуже сподобалось, дякую! Продовжуйте знімати!

  • @МакМёрфи-о8и
    @МакМёрфи-о8и 2 ปีที่แล้ว

    спасибо, все круто. Жду вторую часть.

    • @aboutit6516
      @aboutit6516  2 ปีที่แล้ว +1

      смотрите про HOC)

  • @promoabys
    @promoabys 2 ปีที่แล้ว +4

    Голос и видео хорошо рассказываешь,
    но рекомендации, какие-то сомнительные.
    Вместо того чтобы просто работать через className
    и добавить или переопределить стили через них
    городится, какой-то лишний код

  • @JustLikeFixe
    @JustLikeFixe 3 ปีที่แล้ว

    Полезно , давай еще )

  • @romanroman4308
    @romanroman4308 3 ปีที่แล้ว

    Спасибо! Полезный контент!

  • @mixa9269
    @mixa9269 3 ปีที่แล้ว

    Очень неплохо! Для себя ничего нового не нашел, но для новичков самое оно. Пили исчо!
    Удачи!

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว

      спасибо за поддержку)

  • @woodDacha
    @woodDacha 3 ปีที่แล้ว

    Спасибо, познавательно!

  • @kirill5675
    @kirill5675 3 ปีที่แล้ว +1

    На 8:39 закрыли камерой часть кода, в таких случаях убирайте левое меню со структурой папок.

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว

      Увидел, сори

  • @miraigrafit7865
    @miraigrafit7865 3 ปีที่แล้ว

    Спасибо за ролик! Черепашка ниндзя одобряет)
    Не знаю Реакта, практикуюсь пока только на html,css,js. По поводу стилей использую методологию БЭМ и там стили, которые влияют на внешнее позиционирование (по типу марджинов, позишн, и т.д. и т. п.) пишутся к блоку, а остальные стили к элементу, таким образом можно легко переиспользовать блоки в нужных местах, а если есть какие-то различия (которые не влияют на внешнее окружение, так как то, что влияет пишется в стилях элемента), то добавляются модификаторы

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว

      Да, БЭМ неплоха, это так сказать тренировка для того чтобы научиться разделять ответственность в коде.

  • @fps404
    @fps404 3 ปีที่แล้ว

    зашло, давай ещё!

  • @grandmaster2419
    @grandmaster2419 3 ปีที่แล้ว

    Бомбезний відос !! коротко і зрозуміло.. Продовжуй записувати тем дуже багато..!!

  • @anton_ivanov52
    @anton_ivanov52 3 ปีที่แล้ว

    давай еще, видос супер!

  • @bogdan_redkin
    @bogdan_redkin 2 ปีที่แล้ว

    Мені сподобався такий формат😍

  • @ИльяШишлачев
    @ИльяШишлачев 3 ปีที่แล้ว +2

    а почему нельзя передать класс как пропс? в таком кейсе не нужна обертка

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว +1

      Можно и так, я просто ненавижу классы=) Использую либо ксс модули либо стайлед компонент, все эти прокидывания классов, выдумывание имен, БЭМ и прочее - просто зря потраченное время и интеллектуальный ресурс. Но нужно понимать как это работает

  • @MK-td2dt
    @MK-td2dt 2 ปีที่แล้ว

    Продолжай !

  • @v.demchenko
    @v.demchenko ปีที่แล้ว +1

    Что бы каждый раз обертку не писать, можно эту обертку сразу в компонент прокинуть. И рендерить с или без в зависимости от пропсов

    • @amoradsohlghar9133
      @amoradsohlghar9133 ปีที่แล้ว +1

      или подставлять модификаторы класса сразу в компонент, ну или специальный класс какой-нибудь

    • @andreychiglintcew5024
      @andreychiglintcew5024 9 หลายเดือนก่อน

      styled-components рулят, решают всю эту красоту два клика, но я их складываю отдельно, и вызываю нужный, по принципу компонентов в фигме, будет дефолт и 2-3 стейта погнали делать дефолт и 2-3 стиля

  • @АлинаМэджик-ж7ш
    @АлинаМэджик-ж7ш ปีที่แล้ว

    Спасибо!

  • @artemmelinevskiy333
    @artemmelinevskiy333 2 ปีที่แล้ว +2

    А почему просто не прокинуть className через пропсы с родительского компонента к дочернему?

    • @ev_geniy17
      @ev_geniy17 2 ปีที่แล้ว +1

      Это создаст лишние пропсы и когда стили находятся рядом с компонентом их проще найти. Это не проблема когда класс один, но их может быть много. Но вариант оборачивать мне тоже не нравится, лучше определить в родительском css стили дочернего компонента.

  • @someguy4973
    @someguy4973 2 ปีที่แล้ว +3

    Какие-то бесполезные обертки. className можно указать напрямую у компонента в месте его вызова и он применится к конкретному экземпляру. Использование BEM-подобного синтаксиса в 2021, когда есть CSS Modules тоже сомнительно. Советы хорошие, но видно что автор не до конца разобрался в теме.

    • @aboutit6516
      @aboutit6516  2 ปีที่แล้ว

      ну не на всех проектах есть css модули, почему не разобрался? можно и класснейм прокидывать, просто мне так удобнее

  • @kirillmitin34
    @kirillmitin34 3 ปีที่แล้ว +1

    Почему бы не сделать лист видосов, где ты обучаешь людей разбивать по компонентам и создание своего UI например CreatePortal и так далее.

  • @yevheniiakimov2967
    @yevheniiakimov2967 3 ปีที่แล้ว

    3 месяца без видео, вот что бывает с теми, кто связывается с Соером

  • @ТарасМ-х9ф
    @ТарасМ-х9ф 3 ปีที่แล้ว

    Видео занимает слишком большую часть екрана, иногда кода не видно имей это в виду . В целом его можно сделать меньше . Спасибо за материал, хорошая подача , лайк поставил.

  • @hikkineko
    @hikkineko ปีที่แล้ว

    👍

  • @chessclub92
    @chessclub92 2 ปีที่แล้ว

    а нужно ли header или nav сделать отдельным компонентом , который можно повторно использовать ??

  • @checkTM
    @checkTM 2 ปีที่แล้ว

    Можно было в двух словах описать, юзайте TS и парадигму MVVM ) изи) ну и сторы, но в целом в парадигме все подробно излагается касаемо отображения и логики

  • @topsportsevents6014
    @topsportsevents6014 3 ปีที่แล้ว

    Привет , посоветуй как быстрей разобраться в чужом коде . Устроился на работу , кинули на проект где уже куча кода и он еще на react-native)

    • @alexkostyniuk8867
      @alexkostyniuk8867 3 ปีที่แล้ว +1

      просто разобраться, панацеи нету:/

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว +1

      я бы посоветовал изучить базовую архитектуру проекта, но если мало времени мало то просто изучать те места в которых таска

  • @sergentumba583
    @sergentumba583 3 ปีที่แล้ว

    @About IT как можно связаться с тобой?

    • @aboutit6516
      @aboutit6516  3 ปีที่แล้ว +1

      В инсте можно

  • @chessclub92
    @chessclub92 2 ปีที่แล้ว

    спасибо

  • @Дидар-и3в
    @Дидар-и3в ปีที่แล้ว

  • @denichi872
    @denichi872 2 ปีที่แล้ว

    крут

  • @anton5988
    @anton5988 2 ปีที่แล้ว +1

    автор, посмотри как className="App", зачем ты учишь писать className={'App'}, да разницы нет, но читаемость ухудшается

    • @aboutit6516
      @aboutit6516  2 ปีที่แล้ว

      что еще не так?) ролик направлен не на стиль кода класснеймов

  • @Kain9111
    @Kain9111 3 ปีที่แล้ว

    го некст парт

  • @jurafree426
    @jurafree426 3 ปีที่แล้ว

    Не "с", а "из". И "г" слишком мягкое. Но для украинца сойдет.