React Component
-
Class 컴포넌트
class 컴포넌트는 꼭 render를 해줘야 한다.
import React from 'react'; // 정의 class ClassComponent extends React.Component { render() { return (<div>Hello</div>) } } // 사용 <ClassComponent />
-
Function 컴포넌트
import React from 'react'; // 정의1 function FunctionComponent() { return <div>Hello</div> } // 정의2 const FunctionComponent = () => <div>Hello</div> // 사용 <FunctionComponent />
React.createElement
React.createElement(
type,
[props],
[...children]
);
-
type
태그 이름 (문자열), 기존에 작성한 리액트 컴포넌트, React.Fragment
-
태그 이름 (문자열) type
ReactDOM.render( React.createElement("h1", null, `type이 "태그 이름 문자열"입니다.`) )
type이 h1이고 데이터를 주입하지 않으며 자식으로는 해당 문자열(type이 블라블라)이 들어가는 react element를 만들었다.
<h1>type이 “태그 이름 문자열”입니다.</h1>
-
리액트 컴포넌트 type
const Component = () => { return React.createElement( "p", null, `type이 "리액트 컴포넌트" 입니다.` ) } ReactDOM.render(React.createElement(Component)) // ReactDOM.render(React.createElement(Component,null, null))
<p>type이 “리액트 컴포넌트”입니다.</p>
-
React.Fragment
ReactDOM.render( React.createElement( React.Fragment, null, `type이 "React.Fragment"입니다.`, `type이 "React.Fragment"입니다.`, `type이 "React.Fragment"입니다.` ) )
React.Fragment는 DOM에 별도의 노드를 추가하지 않고 여러 자식을 그룹화할 수 있다.
-
-
props
리액트 컴포넌트에 넣어주는 데이터 객체
-
children
자식으로 넣어주는 요소들
Comments