webentwicklung-frage-antwort-db.com.de

React ignoriert das 'for'-Attribut des label-Elements

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?

151
goofballLogic

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.

299
Sophie Alpert

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: 

https://facebook.github.io/react/docs/dom-elements.html

8
Derrick

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.

6
Jani Devang

verwenden Sie einfach htmlFor, um for zu ersetzen!

weitere Informationen finden Sie unter den folgenden Links.

https://facebook.github.io/react/docs/dom-elements.html#htmlfor

https://github.com/facebook/react/issues/8483

https://github.com/facebook/react/issues/1819

2
xgqfrms

Das ist htmlFor in JSX und class ist className in JSX

0
Daniel Nguyen