Retour à la leçon
Mission

Mission : moderniser le design system sans casser ChampRiche

Simplifier des composants forwardRef devenus inutiles sous React 19, tout en gérant correctement le seul cas qui a réellement besoin de fusionner deux refs.

Contexte

L'équipe design system supprime forwardRef de Bouton.jsx et Carte.jsx, devenu inutile depuis React 19. Mais Champ.jsx (renommé ChampRiche) pose un problème différent : il doit à la fois exposer focus()/vider() au parent via useImperativeHandle, ET utiliser en interne un ResizeObserver sur le même noeud DOM pour logger ses changements de taille — ce qui suppose d'observer le noeud tout en respectant la ref externe reçue en prop.