Компонент React

Компоненты представляют собой шаблоны и компануют однородные структуры информации
Имя компонента обязательно пишется с прописной буквы.

Компонент на основе класса JS

React.Component абстрактный класс, на основе которого создаются компоненты React. this.props позволяет обращаться к переданным компоненту аргументам (к свойствам компонента). this к свойствам и методам компонента.

const mc = ['первый li','второй li', 'третий li'] class McList extends React.Component { liList(mcValue, key) { return React.createElement("li", { key: key }, mcValue) } render() { return React.createElement("ul", {className: "ul"}, this.props.mc.map(this.liList) ) } } //создание экземпляра компонента const S = React.createElement(McList, {mc}, null)

Функциональный компонент

const els = ['элемент 1','элемент 2','элемент 3'] const FComp=(s)=> React.createElement('ul',{className:'els'}, s.els.map((value, elsKey)=>React.createElement('li',{key:elsKey},value)) ) let R = React.createElement(FComp, {els}, null) ReactDOM.render(R, document.getElementById('root'))

Пример передачи деструктурированных аргументов: const moon = { name: "Луна", status: "cпутник Земли", mean_radius: "1737.1 km (0.273 of Earth's)" }; const TestRestr3 = ({ name, status, mean_radius }) => React.createElement( "h3", { className: "hello" }, ` ${name} - ${status}, радиус: ${mean_radius} ` ); ReactDOM.render(TestRestr3(moon), document.getElementById("root2"));