TUTO React Server Component de A à Z en 2024

Sdílet
Vložit
  • čas přidán 11. 07. 2024
  • Cours GRATUIT sur les Server Components : mlv.sh/yt-server-component
    00:00 - Introduction
    01:23 - C'était comment AVANT ?
    03:16 - Avec les Server Component
    04:20 - Hydratation
    07:52 - Comparaison avant / après performance
    11:30 - Fonctionnement des Servers Component
    14:06 - Avantage Server Component
    17:04 - Ajout du client
    22:04 - Client VS Server
    25:05 - Les Neutral Component
    28:05 - Composition Client et Server
    33:05 - Suspens API
    38:05 - Quel type de composants as-tu besoin ?
    40:02 - Faut-il éviter les client components ?
    41:05 - Utiliser la composition
    42:00 - Outro
    ▶ VIDÉO
    Découvrez les Server Components en React, une innovation majeure pour le développement web. Dans cette vidéo, nous plongeons en profondeur dans le fonctionnement, les avantages et les meilleurs cas d'utilisation des Server Components.
    ▶ ME SUIVRE
    🐦 Mon Twitter : / melvynxdev
    🖥 Mon GitHub : github.com/Melvynx
    📑 Mon Blog : codelynx.dev
    Le club du développeur secret codelynx.dev/club
    Cours GRATUIT sur useState : codelynx.dev/beginreact/usestate
    Cours GRATUIT sur NextJS : codelynx.dev/nextreact/nextjs
    Cours GRATUIT sur JavaScript : codelynx.dev/beginjavascript/...
    #javascript #developper #react #reactjs #reactjstutorial #reactjsdeveloper #reactjscourse #reactjsforbeginners #reactjsproject #javascripttutorials #javascripttutorialforbeginners
  • Věda a technologie

Komentáře • 108

  • @altahir4789
    @altahir4789 Před 7 měsíci +5

    C'est la meilleure vidéo sur le sujet que j'ai vue jusqu'à présent. Bravo pour la clarté de tes explications.

  • @jonathanmerlin4415
    @jonathanmerlin4415 Před 2 měsíci

    Mille merci

  • @celloudiallo7933
    @celloudiallo7933 Před 2 měsíci

    Vidéo très bien illustré , ludique et une approche pédagogique de qualité. 100eme commentaire de satisfaction mérité !

  • @rodolpheanger6532
    @rodolpheanger6532 Před 10 měsíci

    Encore une très bonne vidéo avec de bonnes explications sur un sujet pas forcément évident à appréhender, top !

  • @NyleorV
    @NyleorV Před 8 měsíci

    Vidéo de qualité !

  • @Picklin
    @Picklin Před 10 měsíci +1

    Ton optimisme et tes schémas aux petits oignons font toujours aussi plaisir, merci pour le partage ! :)

  • @84Mariion
    @84Mariion Před 2 měsíci

    J'ai regardé ta vidéo sur les servers actions et ensuite celle ci et j'en suis ravie !! Tu es très pédagogue et tes schémas + exemples de code permettent de clarifier l'ensemble et c'est vraiment top! Surtout pour ce genre de notions entre server/client et les actions, les composants on peut très vite s'y perdre! Bravo et merci👍👍

    • @melvynxdev
      @melvynxdev  Před 2 měsíci

      Merci ça fait très plaisir !

  • @llaume
    @llaume Před měsícem

    Bravo c'était trop bien expliquer merci ✨✨

  • @RickyBERTRAND-zf6op
    @RickyBERTRAND-zf6op Před 10 měsíci

    Un grand merci pour le partage 🔥🔥

  • @MoryCAMARACI225
    @MoryCAMARACI225 Před 15 dny

    Bien expliqué Merci du fond du coeur

  • @kwandjeen
    @kwandjeen Před 10 měsíci

    Super boulot. Bravo !

  • @winston777ar
    @winston777ar Před 10 měsíci

    Vraiment style tes cours, merci !

  • @diabyalmamyyoussouf739
    @diabyalmamyyoussouf739 Před 8 měsíci

    Excellente logique d’explication ! Merci

    • @melvynxdev
      @melvynxdev  Před 8 měsíci

      merci beaucoup ça fait plaisir

  • @etiennemc2613
    @etiennemc2613 Před 10 měsíci

    Superbe vidéo, merci !

  • @perringrandne6686
    @perringrandne6686 Před 10 měsíci

    Top! Merci

  • @erwansoulas5359
    @erwansoulas5359 Před 10 měsíci

    Super boulot encore une fois et super intéressant

  • @steellgold
    @steellgold Před 10 měsíci

    Enfin.. je l'attendais cette vidéo

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      Ah oui je te l'avais dis ❤️

  • @samatarmoussa
    @samatarmoussa Před 10 měsíci

    Merci beaucoup. Tu m'a fait gagner beaucoup de temps avec cette video

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      Génial c'est avec plaisir ❤️

  • @Tom-rk3lo
    @Tom-rk3lo Před 8 měsíci

    Super merci :D

  • @thechrisas
    @thechrisas Před 3 měsíci

    masterclass, tu expliques super bien

  • @0x_conspi
    @0x_conspi Před 2 měsíci

    Masterclass!!!!

  • @g-cordonnier
    @g-cordonnier Před měsícem

    Très bien expliqué merci beau travail.

  • @Doowi92
    @Doowi92 Před 10 měsíci

    ce que j'aime bien c'est que tu expliques de façon différente pour chaque chose de façon a bien faire comprendre au lieu d'expliquer une fois avec un exemple alors certes pour ceux qui comprennent rapidement ca peut faire répétitif mais pour ceux qui ont du mal ca permet de bien comprendre chaque chose car expliquer de plusieurs façons/contexte différents.

    • @melvynxdev
      @melvynxdev  Před 10 měsíci +1

      Exactement, ça prend plus de temps mais ça permet de rendre l'information la plus accessible possible. Certaines personnes sont plus terre à terre, d'autres ont besoin de métaphore etc...

  • @francktiomela3002
    @francktiomela3002 Před 4 měsíci

    Merci pour ton contenu

  • @HenrySommeil
    @HenrySommeil Před 10 měsíci

    Merci pour ton travail

  • @aminetakdjout6545
    @aminetakdjout6545 Před 10 měsíci

    Merci beaucoup c'est bien expliqué

  • @vincentmarconnet6061
    @vincentmarconnet6061 Před 10 měsíci +1

    Je commente parce que c’est le meilleur moyen pour dire a CZcams et à toi que j’aime ce genre de vidéo 🥲
    Encore une pépite ce genre de vidéo !

    • @melvynxdev
      @melvynxdev  Před 10 měsíci +1

      Merci beaucoup ❤️❤️❤️

  • @theofernandez611
    @theofernandez611 Před 3 měsíci

    Tellement bien merci

  • @slempens
    @slempens Před 10 měsíci

    Merci Melvynx!

  • @simia4862
    @simia4862 Před 5 měsíci

    Merci ça m'a ouvert une toute nouvelle vision de comment coder mes applications web.

  • @kaydah7915
    @kaydah7915 Před 10 měsíci

    Merci.

  • @hedigamingfortnite6626
    @hedigamingfortnite6626 Před 3 měsíci

    TOP !!

  • @amadousow6598
    @amadousow6598 Před 10 měsíci

    merci

  • @sanda1365
    @sanda1365 Před 6 měsíci

    Ta video est très utile et très clair. Comment ne pas devenir un expert de next js avec tes explications et la docs du framework. Merci pour ta video elle m'a aidé de fouuuuuu !

  • @birladotech9706
    @birladotech9706 Před 6 měsíci

    Parfait cet video rien a dire

  • @balthmhs2512
    @balthmhs2512 Před 5 měsíci

    De la bomba ! Je me lance sur React et j'attaque avec Nextjs. Franchement, moi qui aie commencé il y a 10 ans sur PHP, en passant par de l'Ajax pour dynamiser tout ça... Nextjs c'est juste le top ! Tout a été pensé pour faire des applications flexibles aux petits oignons. Grave à tes vidéos et quelques shoots de ChatGPT, j'ai l'impression d'être attaché à une fusée.
    Cool, continue comme ça, tu nous fais du bien. Parceque là Doc Nextjs c'est pas évident de faire le tri entre toutes les versions majeures. En plus, j'ai bien l'impression que tout n'est pas à jour.
    Bref, je me suis mis à Nextjs en 2024 😅

    • @melvynxdev
      @melvynxdev  Před 3 měsíci +1

      On est tellement d'accord !

  • @blaiseabbodjoulde8341
    @blaiseabbodjoulde8341 Před 9 měsíci

    Merci pour la vidéo très édifiantes. Perso, j'aime également beaucoup next Js. Mais si je ne me trompe pas, Remix également supporte les server components

  • @parlierthierry8880
    @parlierthierry8880 Před 10 měsíci

    Allez, la petite pose video avec mon Reacteur préféré.

  • @MrRaelity
    @MrRaelity Před 10 měsíci

    Merci, je te découvre que très récemment. Après quelques vidéos (très intéressantes), celle-ci vient me convaincre de m'abonner, de liker et de commenter. Merci pour ce partage très complet, très beau travail ! J'espère que tu continueras ainsi...
    A ce propos, envisages-tu de faire un cours de A à Z sur l'entièreté de NextJS 13 (avec typescript) ? J'ai pas mal expérimenté jusqu'à Next 12 mais la version 13 change pas mal de trucs fondamentaux et c'est pas forcément facile de s'y retrouver, même avec la doc, notamment avec la revalidation qui a l'air capricieuse et qui ne fait que du SWR (disparition de l'option fallback='blocking')
    J'ai un exemple de pages statiques contenant des données issues d'une api externe, ces données ne changent que peu souvent, j'aimerai donc renouveler ces pages que toutes les 24h, or, quand la page est redemandée à partir des 24h, la revalidation se fait mais c'est quand même l'ancienne page qui est rendue à ce moment et il faut refresh pour avoir la nouvelle.
    Ces page doivent se rendre selon l'ISR car je veux pas fetch l'api externe à chaque demande de la page alors que les données n'ont probablement jamais changées (gaspillage).
    J'ai contourné ce problème à l'aide de middleware appelant une route provoquant cette revalidation comme je souhaite à travers un NextApiResponse.revalidate(ma page) dans un dossier pages/api/revalidation (old school) car ce revalidate fonctionne bien contrairement aux revalidatePath ou revalidateTag bien que cité dans la doc de Next13 app router.
    Si t'as lu mon commentaire jusqu'au bout merci, et si t'as une réponse à mon souci je suis preneur, ou mieux, une vidéo sur la revalidation en détail. :)

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      Génial merci beaucoup, je pense continuer comme ça oui !

  • @Jarod75
    @Jarod75 Před 10 měsíci

    Merci pour ta vidéo et pour les croquis. Je suis plus convaincu par la sécurité que par le gain vitesse. 😮

    • @melvynxdev
      @melvynxdev  Před 10 měsíci +1

      Ahaha pourqoui ça ?

    • @Jarod75
      @Jarod75 Před 10 měsíci

      @@melvynxdev parce que en terme de vitesse, le gain est quand même minime.

  • @anthonyferreira1839
    @anthonyferreira1839 Před 8 měsíci

    Tu es très pedagogue, tu ferais un très bon professeur !

  • @simonlecordier5180
    @simonlecordier5180 Před 10 měsíci

    Très bonne vidéo on comprend bien quand utiliser l'un ou l'autre des composants.
    Je me demande si tu devrais pas mettre un lien pour récupérer les schémas ? J'en aurais bien eu besoin peut-être lors de ma prise de note même si je m'en suit passé.

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      Ah oui, ce serait une bonne idée

  • @Oumar_kone
    @Oumar_kone Před 10 měsíci

    Serveur components c'est génial mais très très très très très très très frustrant des le début difficile a comprendre mais une fois comprise tu pleures de joie tu pleures de joie sincèrement

  • @ludovichund9222
    @ludovichund9222 Před 10 měsíci +2

    Merci beaucoup pour ces explications précieuses ! J'ai une question, comment tu utilises react query ducoup avec ces composants ? Tu l'utilises pas ? ou que dans les client component ? (ducoup on refait les requêtes côté client :/)

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      Tu peux utiliser en client component oui

  • @louismazel
    @louismazel Před 7 měsíci

    "LES REACT SERVER COMPONENTS" avec l'accent Texan c'était parfait

  • @Willow_PX
    @Willow_PX Před 6 měsíci

    Mec je suis en train de faire un petit projet en Next pour continuer mon apprentissage du code en général et surtout pour tester Next et je me suis retrouver bloqué entre des action possible server side et d'autre client side. j'ai regardé ta vidéo au pif du pif et là tu balances qu'on peut wrapper des server components dans des client components.
    Mec... 2 semaines que je cherche et toi tu résous le truc en 5s. Jpp comment je suis nul xDD

    • @melvynxdev
      @melvynxdev  Před 6 měsíci +1

      Non t'es pas nul tkt c'est pas si simple !

    • @Willow_PX
      @Willow_PX Před 6 měsíci

      @@melvynxdev C'est gentil mec merci

  • @bossgd100
    @bossgd100 Před 10 měsíci

    Merci j'avais la flemme de me tapper la doc

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      y'a pas de doc encore :troll: mise à part vercel xD

  • @wyllen44
    @wyllen44 Před 9 měsíci

    Petite question. Comment gères tu les questions d’invalidation de data avec les server components?
    Par exemple j’ai une liste de donnés et je peux interagir avec chaque élément de la liste(modification, suppression). Actuellement avec React query on va pouvoir invalider les données récupérées et forcer un « refetch » pour avoir un state bien à jour par rapport au serveur. Dans le cas des serveurs components comment procéder ?

    • @melvynxdev
      @melvynxdev  Před 9 měsíci

      Hello, tu peux revalider le path entier avec un refresh ou un revalidate path dans le contexte de server action ;)

  • @QuentinTRUFFY-gq4ye
    @QuentinTRUFFY-gq4ye Před 10 měsíci +1

    Un grand merci pour cette vidéo incroyable ! J'ai cependant une question. Si je souhaite créer un user context contenant des informations sur l'utilisateur (afin d'éviter de récupérer des informations dans ma base de données à chaque changement de page), et que je place ce contexte dans mon fichier "layout.tsx" à la racine du projet, l'application deviendra-t-elle complètement basée sur des composants côté client ? Car lorsque je fais cela, la page affiche mon composant vide sans les informations, puis le composant se met à jour avec mes données. Pourtant, le contexte est toujours actif. Même en utilisant le streaming, j'ai le même problème.

    • @melvynxdev
      @melvynxdev  Před 9 měsíci

      Hello Quentin, merci pour ton commentaire et désolé pour le temps de réponse ! Hésites pas à rejoindre mon discord codelynx.dev/discord pour poser des questions c'est beaucoup plus simple !

  • @jc13OM
    @jc13OM Před 10 měsíci

    Ce que je trouve dommage pour l'instant, c'est de ne pas pouvoir passer une fonction en tant que prop à un client comp depuis un server comp parent pour handle un event dans le child (qui est donc un client comp) Erreur : "Event handlers cannot be passed to Client Component props".
    Cela oblige a remonter encore le use client au parent, alors que le but initial est de "descendre" le plus possible le use client.
    Sinon super vidéo, très bon résumé c'est très clair.

    • @melvynxdev
      @melvynxdev  Před 9 měsíci

      Hello, merci beaucoup. Avec les server action, c'est maintenant possible. Sinon c'est assez logique que tu ne puisses pas passer une function qui fait une action du client dans un code server

  • @dfiad77pro
    @dfiad77pro Před 10 měsíci

    Très bonnes explications !
    A rajouté peut etre un que coté Perf ça se démarque encore plus sur le mobile,
    coté entreprise industrielles c'est pas gagné, lorsqu'une page télécharge 20 mo de js au 1er chargement et que personne s'en plein et qu'on te parle de green IT :).
    Actuellement il est difficile de promouvoir ce type de rendu lorsque la stack force à utiliser un tomcat
    + Java pour le front (ce qui rends la partie hydratation non disponible et que dans le meilleur des cas on fait un bon code splitting)
    une considération à la masse, pour les server components limite on devrai avoir une autre extension de fichier ( le use client n'est pas un marqueur assez fort), mais ça ce n'est pas nous qui le déciderons :)

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      Exactement, certaines personnes utilisent déjà `file.client.tsx` pour comprendre la différence d'un coût d'œil !
      Et effectivement, déjà que uniquement Vercel le supportes il y a le temps avec que l'industrie ce mette à jour.

  • @Trinita1970
    @Trinita1970 Před 10 měsíci

    Je suis rassurée par la conclusion car j'ai beaucoup plus de clients components que de serveurs components. En tout cas j'espère que Next.js ne finira pas comme CRA car c'est vraiment un bon framework.

    • @melvynxdev
      @melvynxdev  Před 10 měsíci

      Pourquoi ça finirait comme CRA ?

    • @Trinita1970
      @Trinita1970 Před 10 měsíci

      @@melvynxdev Javascript évolue tellement vite que les technologies deviennent obsolètes au bout de quelques années, voir carrément abandonné comme CRA.
      PHP c'est plus stable, par exemple.