NextJS 13. Использование клиентских компонентов

Поделиться
HTML-код
  • Опубликовано: 21 сен 2024

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

  • @mishanep
    @mishanep  Год назад +76

    По планам в ближайших видео поговорить о создании API точек и использовании NextAuth.

    • @andrewsam224
      @andrewsam224 Год назад +1

      Спасибо!!! Михаил!!!

    • @d_r_robot
      @d_r_robot Год назад +1

      Просто огромное спасибо за ваш труд!!!

    • @dmitryts9093
      @dmitryts9093 Год назад +1

      Спасибо, ждем новых видео

    • @user-888azim-97
      @user-888azim-97 Год назад +1

      Вооооо!! супер🤘

    • @shashi-kf3mw
      @shashi-kf3mw Год назад +1

      Михаил, можете еще добавить пунктик на счет стейт менеджеров в next 13, что касается передачи стейта в серверные компоненты? На примере zustand

  • @IT-Svyatoslav
    @IT-Svyatoslav Год назад +20

    Благодарю Вам Михаил за разбор серверных и клиентских компонент😊! По возможности прошу Вас записать видео по NextJS как можно быстрее). NextJS сейчас популярен а Вы хорошо доносите концепты❤

  • @neodinok-it3ym
    @neodinok-it3ym Год назад +3

    Удивительно качественные и понятные видео, чего практически нет на российском ютубе. Респект

  • @КонстантинСтремянной

    Отличный материал! Спасибо! Сижу и сквозь ролик настырно и упорно все забиваю руками попутно обращаясь к докам версел )

  • @ПолякиНовороссийск
    @ПолякиНовороссийск 9 месяцев назад +1

    Михаил спасибо огромное за видео! Перехожу на Next14 и Zustand в вопросах серверно-клиентских компонент без провайдера просто спасение! Еще раз спасибо, буду в Испании, завезу бутылку коньяка!

  • @VladPashkovski-q8q
    @VladPashkovski-q8q 7 месяцев назад +1

    Спасибо, очень ценю ваш труд Михаил, очень развивает как специалиста. Заранее извиняюсь если не прав. у вас под конец 20й минуты закончена клиентская страница блога, но на ней есть указание метаданных. По логике не должна отработать страница в браузере должно выдать ошибку (у меня выдало). По типу: нельзя использовать метаданные в клиентских компонентах... по моему у вас проглючила сборка. Я решил эту проблему так. Вынес всю логику в компонент Blog. Создал серверный компонент BlogPage там оставил мету. Остальная логика была уже в Blog. Компонент Blog возвращал в компоненте BlogPage.

  • @ВалентинДжексон
    @ВалентинДжексон Год назад +1

    Отлично рассказал как первую часть так и вторую. Базовое понятие некста станет понятно любому новичку 👍👍👍👍

    • @ivanlitvinov7715
      @ivanlitvinov7715 4 месяца назад

      Не погоджуюся, зовсім не для новачків :(

  • @Bondarev_Igor
    @Bondarev_Igor Год назад

    Спасибо за отличное видео об Next JS! Замечательный разбор серверных и клиентских компонентов!

  • @НикитаШевченко-ы8я

    Наконец-то стала понятна эта тема с серверными компонентами, спасибо большое)

  • @knowledgedose1956
    @knowledgedose1956 Год назад

    Спасибо за подробный разбор и популяризацию Next и Zustand. Хотелось бы увидеть, как автор решает чуть более интересные задачи, например я столкнулся с проблемой рендера карты(openstreetmap+react-leaflet) в готовом билде.

  • @kaber6400
    @kaber6400 Год назад

    Очень, полезное видео. Михаил, спасибо, жду продолжения)

  • @yuriyovdeyev685
    @yuriyovdeyev685 Год назад +3

    Мне кажется для обучения тайпскрипт не нужен, как тот скрипач (если речь не идет о самом обучении TS). Если сравнить две одинаковые версии кода - вот как в примерах - с тайпскрипт и без, то в общем-то разница очень заметна. Тайпскрипт сильно загромождает код лишними сущностями, необходимости которых, на этапе обучения новым каким-то вещам, просто нет. Оно сильно заметно отвлекает от понимания концепций в целом, ибо привносит элементы вообще никак не влияющие на саму концепцию рассматриваемых технологий.
    А вообще у вас очень толковые уроки. Мало таких на ютубе. Большое спасибо!

  • @Skif769
    @Skif769 Год назад +2

    МИХАИЛ, огромный вам респект и спасибо за видео урок, могли бы в будущем затронуть темы jwt, websockets?

    • @mishanep
      @mishanep  Год назад +1

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

  • @listener487
    @listener487 Год назад

    Спасибо за интересное видео. Я пока не понимаю полностью всей сути разделения на клиент и сервер компоненты. По этому если собираетесь выпускать полноценный курс по Next.js я с удовольствием буду среди преобретающих его.

  • @user-r3t
    @user-r3t Год назад

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

  • @ringnull
    @ringnull Год назад

    Ждем продолжения в следующей серии )

  • @СашаПолянский-х4ы

    swr и zustand выглядят красиво )

  • @unknown.6914
    @unknown.6914 5 месяцев назад

    комментарий для поддержки данного канала.

  • @SGWebDeveloper
    @SGWebDeveloper Год назад +3

    Михаил, спасибо за контент! Очень хотелось бы приобрести именно ваш авторский полноценный курс по современному react+next , надеюсь в будущем вы его реализуете , естественно платный )

    • @mishanep
      @mishanep  Год назад +3

      В наши дни всё так стремительно меняется, что есть риск к концу записи курса получить уроки по легаси 😄 Я надеюсь, что текущие изменения фреймворка, которые происходят прямо на глазах, устаканятся в ближайшие полгода-год. Тогда можно будет и над курсом подумать. Хотя мне также нравится подход frontendmasters.com, у них есть просто разные версии одного и того же курса (что-то стабильно раз в год обновляется). Т.е. нужно под проект что-то вчерашнее - взял изучил. Сегодняшнее - пожалуйста. Но я пока не вижу как это реализовать на тех платформах, где я сегодня размещаю курсы. А переходить на что-то еще - затратно по времени.

    • @dmitriystoyanov933
      @dmitriystoyanov933 Год назад

      @@mishanepМихаил, добрый день. А можно ли использовать новый некс 13.4, но по старинке? без папки апп, всё как раньше... получается все компоненты станут серверными автоматически что ли?

  • @СергейБаранов-ч8с

    Спасибо за хорошую работу

  • @TheAlexChannelClub
    @TheAlexChannelClub Год назад

    Спасибо за ролик.

  • @egolege
    @egolege Год назад

    Хороший ролик! Спасибо

  • @МусхабЯ
    @МусхабЯ Год назад

    Большое спасибо!

  • @Sylar7773
    @Sylar7773 Год назад

    Огромное спасибо

  • @tirthadeva_yoga
    @tirthadeva_yoga 4 месяца назад

    Класс! Миша, спасибо.
    Третий вариант конечно самый простой.
    Стоит ли учить Redux, если есть Zustand?

    • @mishanep
      @mishanep  4 месяца назад +1

      Привет, Тимур!
      Зависит от целей. Если задаваться поиском работы, то Redux может помочь, т.к. он по старой памяти много где в ходу. Если свои приложения делать, то Zustrand может быть отличным решением. На текущем проекте мы с командой используем Zustand.

  • @katada
    @katada Год назад

    Отлично!

  • @ВячеславС-к1м
    @ВячеславС-к1м 8 месяцев назад

    Михаил, вот такой вопрос, вы хотели в коде в серверной компоненте использовать зуштанд (если бы не нужно было загружать посты). Сам по зуштанд подразумевает ререндер, при условии что данные в стэйте изменились. Как серверный компонент будет ререндерится? Да и вообще использование глобальных стэйтов в Nextjs дело опасное, на сервере и на клиенте может быть рассинхронизация, при определенных кейсах. Тут надо консолить и разбираться, тема не такая очевидная как кажется. Также я не понял про SWR, во говорили что мы избавимся от use client...

  • @stepanandreev3739
    @stepanandreev3739 Год назад +1

    Спасибо, очередное шикарное доходчивое видео). Глупый вопрос - но я не понимаю, обычно в приложении очень много компонентов требуют использование состояния или хуков, соответственно мы их должны использовать как клиентские компоненты с приставкой use client. Получается на деле практически основная масса компонентов будет клиентскими, я так понимаю они не рендеряться на сервере, тогда о каком серверном рендеринге может идти речь, получается практически любое приложение на NEXTjS превратиться в приложение на обычном REactJS, разве нет?

    • @mishanep
      @mishanep  Год назад

      Смотря над каким предложением вы работаете. По сути прошлые версии некста так и работали, пока не было серверных компонентов.

    • @stepanandreev3739
      @stepanandreev3739 Год назад

      @@mishanep спасибо) получается NextJS отлично подойдет и лучше использовать со статическими приложениям, то бишь даже сайтами, а не с динамическими приложениями?

    • @СергейЗамалетдинов
      @СергейЗамалетдинов Год назад +1

      @@mishanep Вопрос интересный. Сейчас с этим столкнулся. Делаю статичный сайт(по большей части статичный), но хочу использовать там MUI. Подключаю его к странице и тут же вылетает ошибка, что мол нельзя использовать как серверный компонент. Все из-за того, что где-то в MUI под капотом используется хук или что то в этом роде(подозреваю что он используется при подключении своей темы). Решение - ставить 'use client', но тогда все генерируется на стороне клиента, а это плохо для SEO что для обычного сайта очень критично...В итоге нужно изощряться с обертками или отказываться от MUI в серверных компонентах...

    • @NeoCoding
      @NeoCoding Год назад

      @@СергейЗамалетдинов а ежели делать как это требует дока реакта - выносить именно всё что связано с ui (листья) в отдельные компоненты, а ветки и деревья приложения пусть будут серверными. тогда не должно быть проблем таких

    • @izzei-1614
      @izzei-1614 Год назад

      @@СергейЗамалетдинов 1. КЛИЕНТСКИЕ КОМПОНЕНТЫ не плохо для seo, это все еще ssr и все компоненты до next13 были клиентскими. 2. MUI не работает в серверных компонентах потому что он использует runtime css-in-js, для того, чтобы у вас нормально работали серверные компоненты, вам нужно отказаться от MUI и использовать ту либу, в которой нет runtime css-in-js

  • @tamaraevpraksina6945
    @tamaraevpraksina6945 Год назад +1

    Добрый день Михаил, благодарю за видео урок, очень полезно. У меня вопрос ? возможно ли сделать это в Context Provider , без дополнительный библиотек. Я реализовала это, но вот теперь есть сомнения все ли верно я сделала. Благодарю

  • @vladimirmuratov2220
    @vladimirmuratov2220 Год назад +2

    Я только начал изучать Next, поэтому прошу не бросать в меня помидоры 🙂. По моему вариант с app directory только все усложняет. В классическом варианте есть папка pages, где находятся все страницы, все остальное в папке components, никаких use client, по умолчанию все компоненты серверные, на хуки не ругаются. В чем преимущество варианта с app directory? 🤔

    • @mishanep
      @mishanep  Год назад +3

      В парадигме pages нет понятия серверных компонентов. Они все клиентские.

    • @vladimirmuratov2220
      @vladimirmuratov2220 Год назад +1

      @@mishanep тогда почему в этих компонентах работают getStaticProps, getServerSideProps?

    • @alext5030
      @alext5030 Год назад +1

      @@vladimirmuratov2220 А почему они не должны работать?

  • @artyomtaranenko2267
    @artyomtaranenko2267 Год назад +3

    Михай, добрый день, спасибо за полезную инфу.
    Очень хотелось бы увидеть реализацию rtk и ssr в next, очень уж болезненная тема, next-redux-wrapper - далек от совершенства, но альтернатив и нет, мб в версии 13.4.2 что-то изменилось в этом плане?)

    • @alext5030
      @alext5030 Год назад +1

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

    • @izzei-1614
      @izzei-1614 Год назад

      @@alext5030 контекст категорически не подходит для того, чтобы бизнес-данные приложения хранить, он необходим для другого

    • @CHEBURAT0OR
      @CHEBURAT0OR Год назад

      контекст + useReducer и вперёд :)

  • @TarasovFrontDev
    @TarasovFrontDev 11 месяцев назад +1

    Спасибо за видео! Но урок получился очень сырой. Нужно четко разобрать один, наиболее оптимальный пример. Остальное надо выносить в отдельное видео. Получилось много переделок, переносов и т.п. Так знания не выстраиваются в четкую последовательную цепочку.
    Потратил в три раза больше времени, чтобы декомпозировать компоненты и разнести серверную и клиентскую логики.
    Но в любом случае спасибо!

  • @dimitriy8689
    @dimitriy8689 Год назад

    спасибо

  • @NayroTV
    @NayroTV Год назад

    А нафига вообще zustand или SWR? Нет, я понимаю в качестве развития можно изучить быстро, но нельзя было на Redux-tollkit сделать и ReactQuery?
    Ааааа, понял, это специально так сделано... чтобы мы сами на Redux-tollkit и ReactQuery перекинули всё :) понятно... Спасибо вам за настоящею практику!

  • @Иван-ь2к3д
    @Иван-ь2к3д 11 месяцев назад

    как понимаю, то можно было еще использовать и 4 вариант с помощью server actions(на данный момент экспериментальная версия)

  • @kenovel908
    @kenovel908 10 месяцев назад +1

    застрял на первом варианте реализации поиска. Ругается на то что в клиентском компоненте экспортируется метадата, почему у тебя нет такого?
    и еще, подскажи, пожалуйста, что за магия с reactfc? как мне себе это установить?

    • @mishanep
      @mishanep  10 месяцев назад

      Я деталей не помню, но по идее правильно ругается. Скорее всего у меня серверный компонент импортирует клиентский, и мета-данные в серверном компоненте.
      А reactfc - это просто сниппет. В моем случае кастомный. У меня на канале где-то было видео про сниппеты в VS Code.

    • @kenovel908
      @kenovel908 10 месяцев назад

      @@mishanep понял, спасибо

  • @МаксимШвец-щ9э
    @МаксимШвец-щ9э Год назад

    После генерации апи "для ленивых" в реакте, в некстжс работа с запросами выглядит как-то не однообразно и мало удобно, даже в рамках того же swr

  • @АлексейСтупников-д4у
    @АлексейСтупников-д4у 11 месяцев назад

    здравствуйте! благодарю за видео! подскажите, пожалуйста, на 8:53 вы развернули шорткат reactfc с помощью какого расширения?

    • @mishanep
      @mishanep  11 месяцев назад +1

      С помощью кастомного сниппета. В VS Code можно настроить любой вариант под себя. У меня на канале где-то было видео об этом.

  • @Сергей-э8о6м
    @Сергей-э8о6м 8 месяцев назад

    Получается , секреты всё же можно увидеть на клиенте? Ведь в случае с поиском, запросы к REST API (например) будут выполняться из браузера?

    • @mishanep
      @mishanep  8 месяцев назад

      С клиента запросы должны идти на nextjs сервер и с него уже на внешний сервис с секретом. Тогда в браузере всё тип-топ. У next есть свой rest API и серверные экшны. Оба варианта подходят. Оба освещены на моем канале.

    • @Сергей-э8о6м
      @Сергей-э8о6м 8 месяцев назад

      @@mishanep понял, спасибо за ответ.

  • @vadicus6534
    @vadicus6534 Год назад

    Спасибо за интересный урок) Очень интересно сравнение технологий! Заметил что функция поиска работает как то странно. Если написать например esse то результаты не содержат эту комбинацию. на пример на моменте 31.04. Так и должно быть?

    • @mishanep
      @mishanep  Год назад

      Там поиск по заголовку и body идёт, поэтому норм

  • @NeoCoding
    @NeoCoding Год назад

    кстати, Михаил, кроме истории есть ещё физика, химия, русский, литература и др)

    • @mishanep
      @mishanep  Год назад

      Это вы к чему? Мне больше всего информатика нравилась.

    • @NeoCoding
      @NeoCoding Год назад

      @@mishanep ну всё время историю вспоминаете)

  • @NeoCoding
    @NeoCoding Год назад

    спасибо! да чакра ничт

  • @rustam_gasymov
    @rustam_gasymov Год назад

    Круто, спасибо большое!! Скажите как называется ваша тема в вскоде?

  • @llwebstylell242
    @llwebstylell242 Год назад

    Михаил а вы не подскажите случаем, почему в серверных компонентах дважды вызывается fetch ?

  • @erxweo
    @erxweo Год назад

    почему не используешь FC для компонентов, а уже в него дженериком тип пропсов? выглядит намного лучше: const Navigation: FC = ({navLinks}) => { ....

  • @Time2paw
    @Time2paw Год назад

    Благодарю за видео. Меня беспокоит вопрос по поводу автоимпорта, не могли бы вы подсказать как его лучше реализовать? Выглядит очень удобно, но откуда этот функционал я не смог найти.

    • @mishanep
      @mishanep  Год назад

      Вообще он идёт из коробки с Vs code. Вы начинаете что-то набирать, в подсказке предлагается выбор. Чаще всего первые значения - автоимпорты. Надо просто их выбрать и нажать энтер.

    • @Time2paw
      @Time2paw Год назад

      @@mishanep полазил в настройках, поискал инфу - иногда не работает, нужно в schema добавлять исключения папку node_modules. Добавил и всё заработало.

  • @d.volobuev
    @d.volobuev Год назад

    Спасибо за урок!
    Михаил, подскажите, как в VScode называется плагин, который отображает цветные линии от скобки ло скобки? На вид удобно.

    • @mishanep
      @mishanep  Год назад +1

      Я не ставил никакого плагина для этого. Может быть особенность цветовой темы, у меня CodeSandbox 2021.

    • @d.volobuev
      @d.volobuev Год назад

      @@mishanep Нашёл. В параметрах VScode надо было включить: editor.guides.bracketPairs

  • @uvy.studios
    @uvy.studios Год назад

    Михаил, спасибо за урок. Немного не понял с Провайдером. Допустим мы помечаем Провайдер с ChakraProvider, как клиентский компонент. Не получится ли так, что все дочерки этого провайдера тоже станут клиентскими?

    • @mishanep
      @mishanep  Год назад

      В качестве пропа children у клиентского компонента могут быть и серверные. Поэтому всё норм.

  • @jonyonee
    @jonyonee 10 месяцев назад

    А как сделать loading что бы работал при поиске или вообще когда запрос или mutation

  • @SanchirEmgushov
    @SanchirEmgushov Год назад

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

    • @mishanep
      @mishanep  Год назад

      Здравствуйте. Не планирую. Пока не вижу в этом особого смысла. Как провайдер подключать (любой) я показал в этом видео. По сути, где будет реакт квери должна быть директива 'use client'. В остальном какие будут отличия?

  • @artempaskal7986
    @artempaskal7986 8 месяцев назад

    Изучаю Next Js, сделал тестовое похожее на то, что на видео, но не понятно с клиентскими компонентами, я правда использвал редакс, та еще шляпа, но когда я с помощью стейт менеджера запрашиваю посты, они получается в сорсах страницы не видны, они же не серверные, они клиенсткие, может ктото подсказать, это я затупил, или так оно и есть???

  • @etemax
    @etemax 11 месяцев назад

    в rtk query больше нет надобности? ну раз nextjs теперь сам хеширует данные

  • @ВладПашковский-ц2э
    @ВладПашковский-ц2э 6 месяцев назад

    На 16 минуте не совсем понял с постами, может кто-то объяснит если не затруднит. Мы посты импортирвали на страницу блога, хотя до этого говорилось что серверные компоненты нужно как пропсы прокидывать. Я что-то явно не понимаю или это ошибка просто?

  • @govorov_top
    @govorov_top Год назад

    Это значит что скоро на Udemy ждать курса по NextJS?))))))))))))

    • @mishanep
      @mishanep  Год назад +1

      Поживем - увидим =) Пока выглядит как главный кандидат в курсы.

  • @biLLie_wiLLie
    @biLLie_wiLLie Год назад

    Объясните для меня плиз - зачем мне вообще может быть нужен обычный реакт? Я могу всегда и для всех проектов использовать Next js?

    • @mishanep
      @mishanep  Год назад +1

      С появлением серверных компонентов этот вопрос, действительно, становится более насущным. Так-то SSR не на каждом проекте нужен, например, вы делаете админскую панель сайта и закрытый от поисковиков раздел, да и не каждый одностраничник нуждается в SEО. Теперь же серверные компоненты еще и бандл оптимизируют.
      Но с другой стороны, помимо Nextjs есть куча других инструментов использующих Реакт. У них и SSR может быть при необходимости, а завтра там также появится возможность использования серверных компонентов.
      Потом сам Next тоже что-то добавляет в бандл, он не идет бесплатен.

  • @MrEmil-cf8wo
    @MrEmil-cf8wo 11 месяцев назад

    Михаил привет,а что за тема или шрифт у тебя?

  • @Tonylylven
    @Tonylylven 10 месяцев назад

    можешь сказать как ты быстро создаешь функцию для компонента реакт?

    • @mishanep
      @mishanep  10 месяцев назад

      Кастомный сниппет для VS Code. У меня на канале было видео как их создавать.

    • @Tonylylven
      @Tonylylven 10 месяцев назад

      @@mishanep нашел аналогичные в плагинах вс кода без стрелочной функции. Спасибо

  • @Национал-предатель

    Сейчас конечно ночь и я уже туплю. Но Серверные компоненты заменяют в итоге getServerSideProps?

    • @mishanep
      @mishanep  Год назад

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

    • @Национал-предатель
      @Национал-предатель Год назад

      @@mishanep спасибо за ответ, насколько увидел то курсов по новым этим фишкам у вас еще не скоро?
      Неделю ковыряюсь со своим проектом на нексте и жутко мучаюсь с этим getServerSideProps :(

  • @yevhenfodorov121
    @yevhenfodorov121 8 месяцев назад

    как в этом всем разобраться? не понимаю!!!

  • @behrambayramli6545
    @behrambayramli6545 Год назад

    Пожалуйста, не могли бы вы выполнить аутентификацию и авторизацию в next13 + ExpressJs (токен доступа JWT)

    • @mishanep
      @mishanep  Год назад +1

      Cочетание Next и Express - хорошая идея? Если бэкенд у нас полностью на JS, то почему не писать его сразу в Next? Next имеет серверную часть и может спокойно общаться с БД. Часто Next используют как прослойку между фронтендом и бэкендом, когда бэк написан на Java или других языках. А когда всё JS/TS, то нужен ли Express?

    • @behrambayramli6545
      @behrambayramli6545 Год назад

      @@mishanep я свами согласен но если проек уже написано на express + react, и надо заменит react на next и не писат баск заново

  • @ramilb.252
    @ramilb.252 Год назад

    Как называется плагин который автоматически импортирует все зависимости? и другие которые помогают быстро разрабатывать?

    • @mishanep
      @mishanep  Год назад

      Это встроенная возможность VS Code. Т.е. специальное расширение я не использую.

    • @ramilb.252
      @ramilb.252 Год назад

      @@mishanep а как включить

    • @en_kratia
      @en_kratia 11 месяцев назад

      @@ramilb.252 он уже включен изначально, не нужно ничего специально делать, просто установить VS Code и открыть его.

  • @daniilkononchuk8837
    @daniilkononchuk8837 Год назад

    Подскажите пожалуйста. Если серверный компонент состоит из двух клиентских, это как-то оптимизирует приложение, в отличии от того чтобы сделать клиентский компонент в клиентском компоненте?
    Серверный или Клиент
    | | |
    Клиент Клиент Клиент

    • @izzei-1614
      @izzei-1614 Год назад +2

      если серверный компонент большой, то да, если тупа обертка, то в этом нет смысла

  • @artyomtaranenko2267
    @artyomtaranenko2267 Год назад

    Вот по этой причине мне и нравится юзать редакс, так с добавлением rtk мы одновременно запрашиваем данные и храним в сторе, правда оч не хватает инфинити скролла.

    • @adamburke4496
      @adamburke4496 Год назад

      А как он заводится с Next'ом? Нужно дополнительный пакет Wrapper устанавливать?

  • @sno-oze
    @sno-oze Год назад

    а преимущества какие у серверных? не увидел явного сравнения, мол, серверные лучше здесь потому что получили такое преимущество, выиграли в чём-то, а там где использовали клиентские компоненты, то выиграли здесь, получили преимущество здесь.
    по факту, видно, что та же Chakra вся на клиентских работает, ну т.е. даже они не понимают смысла от серверных.

    • @mishanep
      @mishanep  Год назад

      При использовании серверных компонентов поставляется меньше js-кода на клиент, в том числе в бандл не попадают зависимости, используемые только в серверных компонентах.

    • @sno-oze
      @sno-oze Год назад

      @@mishanep во 2м примере, что показали, где по сути вынесли input в отдельный компонент, а обёртка стала серверной, мы особо ничего и не сэкономили-то.
      Вот был бы реальный пример, где экономия сотни кб, а так нечто странное.
      Да и ещё самому заботиться о том, мол, серверный или клиентский компонент, хотя, вроде бы nextjs ругается когда используем хуки в серверном.

  • @ИмяФамилия-х4в1е
    @ИмяФамилия-х4в1е Год назад

    А как затриггерить рендер серверного компонента на клиенте?

    • @mishanep
      @mishanep  Год назад

      Серверный компонент рендерится на сервере. На клиенте вся логика до оператора return на клиент просто не попадает. Поэтому никак.

  • @ivanshalaginov548
    @ivanshalaginov548 Год назад

    очень круто, но понимается с трудом))

  • @rustwithoutrust
    @rustwithoutrust Год назад

    Брат шахматиста?

  • @MrZuven
    @MrZuven Год назад

    Привет, ты нашел способ как обновлять серверные компоненты? перерыл кучу инфы никто кроме как router.refresh(); ничего не советует, но это такая шляпа, весь сайт перерендеривается. Допустим пример, я добавил пост на странице добавления, иду на главную, а данные с сервака не обновляются, он тупо не идет даже в функцию где эти данные о постах фетчатся, пока не обновишь страницу. Хоть этот Link не используй, а просто тег а

  • @hibiride
    @hibiride 6 месяцев назад

    супер! 👍