In React (Facebooks Framework) muss ich ein an eine Texteingabe gebundenes Label-Element mithilfe des Standardattributs for
rendern.
z.B. Der folgende JSX wird verwendet:
<label for="test">Test</label>
<input type="text" id="test" />
Dies führt jedoch dazu, dass HTML das erforderliche (und Standard) for
-Attribut fehlt:
<label data-reactid=".1.0.0">Test</label>
<input type="text" id="test" data-reactid=".1.0.1">
Was mache ich falsch?
Das for
-Attribut wird aus Konsistenz mit der DOM-Eigenschafts-API htmlFor
genannt. Wenn Sie den Entwicklungs-Build von React verwenden, sollte in Ihrer Konsole eine Warnung darüber angezeigt werden.
Ja, um zu reagieren,
für wird zu htmlFor Klasse wird zu Klassenname etc.
eine vollständige Liste der Änderungen an HTML-Attributen finden Sie hier:
Für React müssen Sie per Definition definierte Schlüsselwörter verwenden, um HTML-Attribute zu definieren.
class
->className
wird verwendet und
for
->htmlFor
wird verwendet, da bei der Reaktion auf Groß- und Kleinschreibung zu achten ist, stellen Sie sicher, dass Sie klein und Kapital nach Bedarf folgen müssen.
htmlFor
, um for
zu ersetzen!weitere Informationen finden Sie unter den folgenden Links.
https://facebook.github.io/react/docs/dom-elements.html#htmlfor
Das ist htmlFor in JSX und class ist className in JSX