Les hooks Hooks

Les high-order components et les render props permettent chacun à leur manière de répondre à un même besoin : faire en sorte qu’un composant soit le plus réutilisable possible, notamment en séparant ce qui peut être mutualisé (comportement, affichage de base…) de ce qui doit laisser un certain degré de liberté à l’utilisateur du composant (affichage personnalisé…).

Mais nous avons également vu dans le deuxième chapitre de ce livre que React propose une fonctionnalité qui pourrait également répondre à ce besoin, je parle naturellement des hooks. Nous avons vu comment utiliser certains des hooks standards de React (useState, useCallback, useEffect…), ou encore des hooks apportés par des bibliothèques tierces (useSelector de React Redux, useQuery de Apollo Client), mais bonne nouvelle : on peut également écrire nos propres hooks !

Reprenons par exemple ce que nous avions fait dans la section sur les render props : avoir un composant capable d’afficher la taille actuelle de la fenêtre. Il s’agissait de s’abonner à l’évènement resize de la fenêtre et de conserver cette taille dans un état interne au composant.

En utilisant les hooks, nous nous abonnerons à l’évènement dans useEffect, et nous conserverons la taille dans un état déclaré par useState : useEffect...

Pour consulter la suite, découvrez le livre suivant :
couv_EIREA.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Les render props
Suivant
Les contextes et le pattern Provider/Consumer