Ich weiß, dass wir für 'class' className verwenden müssen, aber wie kann ich reagieren, um das Attribut 'for' beizubehalten?
Folgende:
<label for="recipient-name" className="control-label">Recipient:</label>
wird gerendert als:
<label class="control-label">Recipient:</label>
In einem anderen Zusammenhang finde ich es ärgerlich, dass ich Attribute nicht über die Chrome-Konsole ändern kann, wenn ich React verwende. Gibt es einen Weg, das zu umgehen? Wenn ich zum Beispiel das gerenderte Element inspiziere und das Attribut 'for' manuell hinzufüge, verschwindet es, wenn ich von diesem Steuerelement wegklicke (vermutlich, weil die Reaktion das Steuerelement, das ich vermute, erneut rendert).
javascript
reactjs
mike01010
quelle
quelle
for
: facebook.github.io/react/docs/…for
ist ein reserviertes Wort und kann daher nicht als json-Schlüssel verwendet werden. Der jsx-Parser verwandelt Ihre jsx-Attributnamen in. Der gleiche Grund ist esclassName
stattclass
.Antworten:
Sie müssen
htmlFor
stattdessen ein Attribut verwenden<label htmlFor="recipient-name" className="control-label">Recipient:</label>
quelle
for
ist ein Schlüsselwort in Javascript, daher können Sie es in JSX nicht verwenden. Sie müssenhtmlFor
dasfor
Attribut verwenden, das in das Attribut übersetzt wird, sobald es im DOM gerendert wurde.quelle