En programmation, un gestionnaire d'événements est une procédure de callback utilisée pour gérer une occurrence de certaines actions, telle qu'un clic sur un bouton. En React.js, que nous utilisons dans cette question, la syntaxe diffère légèrement de celle du JavaScript traditionnel. Analysons l'option correcte pour voir pourquoi c'est la bonne syntaxe pour déclencher un gestionnaire d'événement de clic sur notre bouton "foo".
La syntaxe correcte est <button onClick={this.foo}>
. Cette syntaxe attribue la méthode foo
du composant en cours au gestionnaire d'événement onClick
du bouton. Lorsque le bouton est cliqué, la méthode foo
est exécutée.
Notez que onClick
est en CamelCase. C'est une convention en React. En JavaScript standard, nous aurions utilisé onclick
en minuscules. Par ailleurs, en React, nous n'incluons pas les parenthèses ()
après le nom de la fonction dans la déclaration de l'événement, car nous souhaitons la référencer et non l'exécuter immédiatement lors du rendu du composant.
Pour illustrer son application, supposons que nous avons le code suivant dans notre composant React :
class MyComponent extends React.Component {
foo() {
console.log('Button clicked!');
}
render() {
return (
<button onClick={this.foo}>Cliquez Ici</button>
);
}
}
Dans cet exemple, chaque fois que le bouton est cliqué, la fonction foo
est exécutée, et 'Button clicked!' est imprimé dans la console.
En somme, lors de l'utilisation de React.js, respectez les conventions de nommage CamelCase pour vos gestionnaires d'événements, et assurez-vous de référencer les méthodes sans les exécuter lors du passage des gestionnaires d'événements comme onClick
aux éléments de votre composant. Ainsi, vous profiterez au maximum des fonctionnalités de React en matière de gestion des événements.