- Un article sur l’expérience de l’auteur et les leçons tirées de la migration de 50 000 lignes de code vers les React Server Components (RSCs)
- Les RSCs sont des composants React qui s’exécutent sur le serveur plutôt que sur le client, et offrent deux avantages majeurs par rapport au server-side rendering (SSR)
- Premièrement, les RSCs permettent aux développeurs de définir où le code s’exécute, ce qui réduit la taille des bundles et diminue le travail pendant l’hydration
- Deuxièmement, les composants serveur récupèrent directement les données dans le composant et les diffusent en streaming vers le client, ce qui rend la récupération de données dans React plus simple et plus efficace
- Cependant, l’utilisation des RSCs comporte certaines limites. Le CSS-in-JS ne fonctionne pas dans les composants serveur, le React Context n’est accessible que dans les composants client, et la complexité liée à la gestion de l’emplacement d’exécution du code peut représenter un défi
- L’auteur propose une approche en 3 étapes pour adopter progressivement les RSCs :
- ajouter la directive
"use client" à la racine de l’application
- déplacer la directive aussi bas que possible dans l’arbre de rendu
- adopter des patterns avancés lorsque des problèmes de performance apparaissent
- Malgré la complexité supplémentaire, l’auteur conclut que les avantages des RSCs — comme des bundles plus petits, une exécution plus rapide et des patterns avancés de chargement des données — peuvent l’emporter sur les coûts si les gains de performance sont suffisamment importants pour l’équipe
1 commentaires
Avis Hacker News
app, en soulignant la difficulté à comprendre où le travail s’effectue (sur le serveur ou le client), ainsi que les problèmes avec les bibliothèques React existantes qui partent du principe que le traitement se fait côté client.