UI 구현을 위한 선언적이고 효율적이며 유연한 JS 라이브러리
class ShoppingList extends React.Component {
render() {
return (
<div className="shopping-list">
<h1>Shopping List for {this.props.name}</h1>
</div>
);
}
}
// 사용 예시 <ShoppingList name="Mark"/>
/*#__PURE__*/
React.createElement("div", {
className: "shopping-list"
}, /*#__PURE__*/React.createElement("h1", null, "Shopping List for ", props.name), /*#__PURE__*/React.createElement("ul", null, /*#__PURE__*/React.createElement("li", null, "Instagram"), /*#__PURE__*/React.createElement("li", null, "WhatsApp"), /*#__PURE__*/React.createElement("li", null, "Oculus")));
JSX에서는 중괄호 안에 JS문법을 사용할 수 있음
각 React 엘리먼트는 변수에 저장하거나 프로그램 여기저기에 전달할 수 있는 실제 JS 객체!
ShoppingList
컴포넌트는 내장된 DOM 컴포넌트만 랜더링
But. <ShoppingList />
코드를 작성하여 커스텀 React 컴포넌트를 쉽게 구성할 수 있음
-> 각 컴포넌트는 캡슐화되어 독립적으로 동작할 수 있기 때문에 간단한 컴포넌트들로 복잡한 UI를 구현할 수 있음