Реагирующий элемент метки


в React (фреймворк Facebook) мне нужно отобразить элемент метки, привязанный к текстовому вводу, используя стандартный .

например, используется следующий JSX:

<label for="test">Test</label>
<input type="text" id="test" />

однако это приводит к отсутствию HTML необходимого (и стандартного):

<label data-reactid=".1.0.0">Test</label>
<input type="text" id="test" data-reactid=".1.0.1">

что я делаю не так?

4 135

4 ответа:

The называется htmlFor для согласованности с API свойств DOM. Если вы используете сборку разработки React, вы должны были увидеть предупреждение в своей консоли об этом.

Да, для react,

for становится htmlFor класс становится именем класса так далее.

смотрите полный список изменений атрибутов HTML здесь:

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

для React вы должны использовать его для определения ключевых слов для определения атрибутов html.

class ->className

используется и

for ->htmlFor

используется, поскольку react чувствителен к регистру, убедитесь, что вы должны следовать за малым и капиталом по мере необходимости.

просто используя react htmlFor заменить for!

вы можете найти дополнительную информацию, перейдя по ссылкам ниже.

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

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

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