ReactJS - Création d'un Composant Sensible aux Événements
Bonjour à tous, futurs développeurs React ! Aujourd'hui, nous allons entreprendre un voyage passionnant dans le monde des composants sensibles aux événements dans ReactJS. Ne vous inquiétez pas si vous êtes nouveau dans le monde de la programmation - je serai votre guide amical, et nous avancerons pas à pas. À la fin de ce tutoriel, vous serez capable de créer des composants qui peuvent répondre aux actions des utilisateurs comme un pro !
Qu'est-ce qu'un Composant Sensible aux Événements ?
Avant de plonger dedans, comprenons ce que nous entendons par un "composant sensible aux événements". Imaginez que vous êtes à une fête (restez avec moi, cela concerne bien la programmation, je vous promets !). Vous ne vous tenez pas là comme une statue - vous réagissez aux choses qui se passent autour de vous. Quelqu'un raconte une blague, vous riez. Quelqu'un vous offre de la nourriture, vous la prenez. C'est exactement ce qu'un composant sensible aux événements fait dans React - il répond aux choses qui se passent, comme les clics de bouton ou les entrées clavier.
Comment Créer un Composant Sensible aux Événements ?
Maintenant, mettons les mains dans le cambouis et créons notre premier composant sensible aux événements. Commençons par quelque chose de simple - un bouton qui compte combien de fois il a été cliqué.
Étape 1 : Configuration du Composant
Premièrement, créons un composant React de base :
import React, { useState } from 'react';
function ClickCounter() {
const [count, setCount] = useState(0);
return (
<div>
<button>Click me!</button>
<p>You've clicked {count} times</p>
</div>
);
}
export default ClickCounter;
Décomposons cela :
- Nous importons
React
etuseState
de la bibliothèque 'react'. - Nous définissons un composant fonctionnel appelé
ClickCounter
. - À l'intérieur, nous utilisons le hook
useState
pour créer une variable d'étatcount
et une fonction pour la mettre à jour,setCount
. - Nous retournons du JSX avec un bouton et un paragraphe montrant le compteur actuel.
Étape 2 : Ajout du Gestionnaire d'Événement
Maintenant, faisons en sorte que notre bouton fasse quelque chose lorsque cliqué :
import React, { useState } from 'react';
function ClickCounter() {
const [count, setCount] = useState(0);
const handleClick = () => {
setCount(count + 1);
};
return (
<div>
<button onClick={handleClick}>Click me!</button>
<p>You've clicked {count} times</p>
</div>
);
}
export default ClickCounter;
Quoi de neuf ici ?
- Nous avons ajouté une fonction
handleClick
qui augmente lecount
de 1. - Nous avons ajouté un attribut
onClick
à notre bouton, le définissant surhandleClick
.
Désormais, chaque fois que le bouton est cliqué, handleClick
sera appelé, mettant à jour notre compteur !
Passage d'Informations Supplémentaires au Gestionnaire d'Événement
Parfois, nous voulons passer des informations supplémentaires à nos gestionnaires d'événements. Créons un exemple plus complexe - une liste de fruits où cliquer sur un fruit enregistre son nom.
import React from 'react';
function FruitList() {
const fruits = ['Apple', 'Banana', 'Cherry', 'Date'];
const handleFruitClick = (fruitName) => {
console.log(`You clicked on ${fruitName}`);
};
return (
<ul>
{fruits.map((fruit, index) => (
<li key={index} onClick={() => handleFruitClick(fruit)}>
{fruit}
</li>
))}
</ul>
);
}
export default FruitList;
Décomposons cela :
- Nous avons un tableau de
fruits
. - Notre fonction
handleFruitClick
prend un paramètrefruitName
et l'enregistre. - Dans notre JSX, nous utilisons
map
pour créer un élément de liste pour chaque fruit. - Le
onClick
pour chaque élément est défini sur une fonction fléchée qui appellehandleFruitClick
avec le nom du fruit.
De cette manière, nous passons le nom du fruit à notre gestionnaire d'événement lorsque celui-ci est cliqué !
Gestionnaires d'Événements Communs dans React
React prend en charge une large gamme de gestionnaires d'événements. Voici un tableau de certains des plus courants :
Gestionnaire d'Événement | Description |
---|---|
onClick | Déclenché lorsque un élément est cliqué |
onChange | Déclenché lorsque la valeur d'un élément d'entrée change |
onSubmit | Déclenché lorsque un formulaire est soumis |
onMouseEnter | Déclenché lorsque la souris entre dans un élément |
onMouseLeave | Déclenché lorsque la souris quitte un élément |
onKeyDown | Déclenché lorsque une touche est pressée |
onKeyUp | Déclenché lorsque une touche est relâchée |
onFocus | Déclenché lorsque un élément reçoit le focus |
onBlur | Déclenché lorsque un élément perd le focus |
Conclusion
Félicitations ! Vous avez刚刚 pris vos premiers pas dans la création de composants sensibles aux événements dans React. Nous avons couvert les bases de la gestion des clics, de la mise à jour de l'état en fonction des événements, et même du passage d'informations supplémentaires à nos gestionnaires d'événements.
N'oubliez pas, devenir compétent dans cela est comme apprendre à danser - cela prend de la pratique ! Ne soyez pas découragé si cela ne fonctionne pas immédiatement (jeu de mots intentionnel). Continuez à expérimenter, essayez de créer différents types de composants interactifs, et bientôt vous serez capable de chorégraphier des interactions utilisateur complexes avec facilité !
Dans mes années d'enseignement, j'ai vu des dizaines d'étudiants passer de la confusion à la confiance avec ces concepts. Vous êtes bien sur le chemin pour rejoindre leurs rangs. Continuez à coder, restez curieux, et surtout, amusez-vous avec ça !
Credits: Image by storyset