Contenu du cours
Maîtrise de React
Maîtrise de React
Hook useRef
Le hook useRef
nous permet de créer une variable qui contient une référence à un élément, une valeur ou toute autre donnée qui n'affecte pas le rendu du composant. Cela peut être utile pour stocker des valeurs mutables, accéder à des éléments du DOM ou préserver des valeurs à travers les rendus du composant.
Syntaxe :
Pour utiliser le hook useRef
, nous déclarons une variable (refVariable
), et lui assignons le résultat de l'invocation de useRef()
. Optionnellement, nous pouvons fournir une valeur initiale (initialValue
) en tant qu'argument de ce hook.
Remarque
La valeur actuelle peut être accédée et mise à jour en utilisant la propriété
refVariable.current
. La beauté deuseRef
est qu'il nous permet de manipuler ces valeurs sans déclencher un nouveau rendu du composant.
Exemple :
Créons le composant FormInput
qui utilise le hook useRef
pour créer une référence à un élément input et le focalise lorsqu'un bouton est cliqué.
Dans cet exemple, le hook useRef
crée une référence appelée inputRef
. Cette référence est assignée à l'attribut ref
de l'élément input
, nous permettant d'accéder à l'élément input
en utilisant inputRef.current
.
Explication ligne par ligne :
- Ligne 1 : Nous importons le hook
useRef
de la bibliothèque React pour tirer parti de sa fonctionnalité ; - Ligne 3 : Le composant
FormInput
est défini en utilisant la syntaxe de fonction conventionnelle ; - Ligne 4 : Nous initialisons la variable
inputRef
en utilisant le hookuseRef
, représentant la référence de l'entrée ; - Lignes 6-8 : Cette fonction fléchée JavaScript gère la logique pour cliquer sur le bouton, ce qui concentre le curseur de l'utilisateur sur le champ de saisie ;
- Lignes 10-15 : Le balisage du composant est rendu.
- À la ligne 12, nous définissons la référence en utilisant l'attribut
ref
et assignons la variableinputRef
comme sa valeur ; - Le bouton à la ligne 13 utilise l'attribut
onClick
pour spécifier la fonction à exécuter lorsqu'il est cliqué, qui dans ce cas est la fonctionhandleClick
.
- À la ligne 12, nous définissons la référence en utilisant l'attribut
Code complet de l'application :
1. Quel est le but principal du hook useRef
?
2. Lequel des éléments suivants décrit le mieux le comportement d'une variable useRef
lorsque sa valeur est mise à jour ?
Merci pour vos commentaires !