web-dev-qa-db-fra.com

Comment corriger «Les éléments HTML statiques avec des gestionnaires d'événements nécessitent un rôle.»?

Mon composant de style reactjs contient ce code:

<a styling="link" onClick={() => this.gotoLink()}>
  <SomeComponent /> 
</a>

Cela fonctionne bien mais l'eslint se plaint:

Static HTML elements with event handlers require a role.

Comment puis-je corriger cette erreur?

10
bier hier

vous devez ajouter un accessoire de rôle dans votre balise a pour éviter cet avertissement, par exemple un bouton

<a role = "button" styling="link" onClick={() => this.gotoLink()}>
  <SomeComponent /> 
</a>

Je suppose que c'est parce que les accessoires HREF manquent dans votre balise d'ancrage (pas sûr)

13
Jerome

Vous devez définir explicitement le rôle. Alors, essayez le code suivant:

<a role="button" styling="link" onClick={this.gotoLink}>
  <SomeComponent /> 
</a>

De plus, comme vous pouvez le voir, j'ai modifié le gestionnaire onClick en remplaçant la fonction flèche dans la déclaration régulière. Cela réduirait les calculs ennuyeux et coûteux.

2
Sviat Kuzhelev