在React(Facebook的框架)中,我需要使用标准的for属性呈现绑定到文本输入的label元素。例如,使用以下JSX:
for
<label for="test">Test</label> <input type="text" id="test" />
但是,这会生成缺少必需(和标准)for属性的HTML:
<label>Test</label> <input type="text" id="test">
我哪里做错了?
jogvjijk1#
for属性被称为htmlFor是为了与DOM属性API保持一致,如果您使用的是React的开发版本,您应该已经在控制台中看到了这方面的警告。
htmlFor
oalqel3c2#
是的,React,for变为htmlForclass变为className等等。查看如何更改HTML属性的完整列表:https://facebook.github.io/react/docs/dom-elements.html
class
className
brvekthn3#
对于React,您必须使用它的per-define关键字来定义html属性。class-〉className被使用并且for-〉htmlFor使用,因为react区分大小写,请确保必须按照要求使用小写和大写。
oaxa6hgo4#
for和class都是JavaScript中的保留字,这就是为什么在JSX中使用HTML属性时需要使用其他属性的原因,React团队决定分别使用htmlFor和className
vfwfrxfs5#
由于for是JavaScript中的保留关键字,因此React元素使用htmlFor。
你可以通过下面的链接找到更多信息。https://facebook.github.io/react/docs/dom-elements.html#htmlforhttps://github.com/facebook/react/issues/8483https://github.com/facebook/react/issues/1819
mbyulnm06#
在JSX中为htmlFor,在JSX中为className
6条答案
按热度按时间jogvjijk1#
for
属性被称为htmlFor
是为了与DOM属性API保持一致,如果您使用的是React的开发版本,您应该已经在控制台中看到了这方面的警告。oalqel3c2#
是的,React,
for
变为htmlFor
class
变为className
等等。
查看如何更改HTML属性的完整列表:
https://facebook.github.io/react/docs/dom-elements.html
brvekthn3#
对于React,您必须使用它的per-define关键字来定义html属性。
class
-〉className
被使用并且
for
-〉htmlFor
使用,因为react区分大小写,请确保必须按照要求使用小写和大写。
oaxa6hgo4#
for
和class
都是JavaScript中的保留字,这就是为什么在JSX中使用HTML属性时需要使用其他属性的原因,React团队决定分别使用htmlFor
和className
vfwfrxfs5#
只是使用react
htmlFor
来替换for
!由于
for
是JavaScript中的保留关键字,因此React元素使用htmlFor
。参考
你可以通过下面的链接找到更多信息。
https://facebook.github.io/react/docs/dom-elements.html#htmlfor
https://github.com/facebook/react/issues/8483
https://github.com/facebook/react/issues/1819
mbyulnm06#
在JSX中为htmlFor,在JSX中为className