React 19 introduit des améliorations significatives pour soutenir les éléments personnalisés par rapport aux versions précédentes, en se concentrant principalement sur la façon dont les accessoires sont gérés pendant le rendu. Voici les principales différences:
Gestion des accessoires améliorés
1. Séparation des attributs et des propriétés: Dans React 19, les accessoires qui correspondent aux propriétés sur une instance d'élément personnalisée sont attribués en tant que propriétés pendant le rendu côté client. Si l'hélice est un type primitif (comme «String», «Number» ou «True»), il est rendu comme un attribut. Les types non primitifs (comme «objet», «symbole» ou «fonction») sont exclus du rendu. Cette approche permet une interaction plus intuitive avec les éléments personnalisés, en alignant la façon dont ils sont généralement conçus pour fonctionner [3] [4].
2. Améliorations de rendu côté serveur (SSR): Pendant la SSR, la même logique s'applique: les accessoires primitifs sont rendus comme des attributs, tandis que les types non primitifs sont omis. Cela garantit que la sortie rendu du serveur est cohérente avec ce que le client attend, en réduisant les décalages potentiels pendant l'hydratation [4] [5].
3. Registres d'éléments personnalisés dans les parasites: React 19 prend en charge les registres d'éléments personnalisés dans les parasites, permettant aux développeurs de gérer plus efficacement les éléments personnalisés dans les architectures micro-étendues. Cette fonctionnalité aide à prévenir les conflits de version lorsque plusieurs applications dépendent de différentes versions du même élément personnalisé, améliorant la modularité et la compatibilité [2].
4. Amélioration des mesures de performance: React 19 a obtenu un score de 100% sur la référence des éléments personnalisés du monde entier, une amélioration significative par rapport aux versions précédentes. Cela indique des performances et une meilleure compatibilité avec les composants Web, sur les critiques passées concernant la gestion de React des éléments personnalisés [5].
Ces améliorations de React 19 rationalisent non seulement l'intégration des éléments personnalisés dans les applications React, mais améliorent également les performances globales et l'expérience des développeurs, ce qui facilite le travail avec les composants Web dans un contexte de réaction.
Citations:[1] https://github.com/facebook/react/issues/11347
[2] https://github.com/facebook/react/issues/28938
[3] https://www.angularminds.com/blog/react-19-Beta-Features
[4] https://react.dev/blog/2024/04/25/react-19
[5] https://piccalil.li/blog/uptrowing-constom-element-support-in-react/
[6] https://www.bacancytechnology.com/blog/whats-new-in-react-19
[7] https://eluminentechnologies.com/blog/react-19/
[8] https://www.geeksforgeeks.org/react-19-new-features-and-updates/