Dans React (le cadre de Facebook), je dois restituer un élément d'étiquette lié à une entrée de texte en utilisant l'attribut standard for
.
par exemple. le JSX suivant est utilisé:
<label for="test">Test</label>
<input type="text" id="test" />
Cependant, cela produit du HTML manquant pour l'attribut for
requis (et standard):
<label data-reactid=".1.0.0">Test</label>
<input type="text" id="test" data-reactid=".1.0.1">
Qu'est-ce que je fais mal?
L'attribut for
est appelé htmlFor
pour assurer la cohérence avec l'API de la propriété DOM. Si vous utilisez la version de développement de React, vous devriez avoir vu un avertissement à ce sujet dans votre console.
Oui, pour réagir,
for devient htmlFor class devient className etc.
voir la liste complète des modifications apportées aux attributs HTML ici:
Pour React, vous devez utiliser ses mots clés par définition pour définir les attributs HTML.
class
->className
est utilisé et
for
->htmlFor
est utilisé, car réagit est sensible à la casse, assurez-vous de suivre les règles et les majuscules au besoin.
htmlFor
pour remplacer for
!vous pouvez trouver plus d'informations en suivant les liens ci-dessous.
https://facebook.github.io/react/docs/dom-elements.html#htmlfor
C'est htmlFor dans JSX et class est className dans JSX