Я думаю, что я не понял концепцию ReactJS. Я думал, что могу написать с ним «пользовательские теги». Например, я мог бы сделать поле ввода, с некоторой дополнительной функциональностью, так что я мог бы использовать его следующим образом: -Реакция компонента в html
<form id="theForm">
<input type="text" />
<input type="text" />
<my-input-field />
<my-input-field />
<my-input-field />
<input type="submit" />
</form>
Как я понимаю, я должен пройти «theForm» на мой компонент, который оказывает полный форме, правильно? Пользовательские теги разрешены только внутри функции рендеринга JSX?
Если мне нужно много компонентов на одной странице, я должен вызвать метод ReactDOM.render() для каждого элемента? Как так:
HTML:
<form id="theForm">
<input type="text" />
<input type="text" />
<input id="custom-1" />
<input id="custom-2" />
<input id="custom-3" />
<input type="submit" />
</form>
JS:
ReactDOM.render(<my-input-field />, document.getElementById("custom-1"));
ReactDOM.render(<my-input-field />, document.getElementById("custom-2"));
ReactDOM.render(<my-input-field />, document.getElementById("custom-3"));
Большое спасибо!
Пользовательские компоненты должны быть капитализированы или они будут рассматриваться как элементы DOM – Li357
Я думаю, что вам, возможно, придется снова переходить на документы. Вы передадите свой основной/корневой компонент блочному элементу (обычно это div с идентификатором «app» в учебниках). Ваши дочерние компоненты (которые могут содержать формы, абзацы, список и т. Д.) Будут отображаться в родительском компоненте. Вы должны думать модульным. React имеет хороший [учебник] (https://facebook.github.io/react/tutorial/tutorial.html). – Jecoms
Когда вы перечитываете учебное пособие, имейте в виду, что шаблон должен использовать ReactDOM.render только один раз для вашего корневого элемента. Затем создайте свои дочерние элементы, обычно используя 'map' для повторных элементов. – jmargolisvt