컴포넌트의 속성을 설정할 때 사용하는 요소로 props 값은 해당 컴포넌트를 사용하는 부모 컴포넌트에서 설정한다.
모든 React 컴포넌트는 자신의 props를 다룰 때 반드시 순수 함수처럼 동작해야 한다.
동일한 입력값에 대해 동일한 결과를 반환하는 것을 순수 함수라고 하며, 컴포넌트는 반드시 이러한 순수 함수처럼 작성 되어야 한다.
기본적으로 함수란 특정 재료를 넣었을 때 로직 처리 후 결과를 반환하는 것을 뜻한다.
리액트에서 함수형 컴포넌트를 주로 사용 했을 때 결과물이 엘리먼트이고 재료가 props 라고 생각하면 된다.
간단하게 props란 외부(렌더링 시점)에서 시행이 되는 매개변수와 같다.
const name1 = '홍길동';
const name2 = '유관순';
function Title(props){
// console.log(props);
return <h1>안녕하세요 {props.name}님 반갑습니다.</h1>;
}
/* props.name이 존재하지 않는 경우 기본값 설정 */
Title.defaultProps = {
name: '기본이름'
}
ReactDOM.createRoot(document.getElementById('root')).render(
[
<Title name={name1}/>,
<Title name={name2}/>,
<Title name='이순신'/>,
<Title/>
]
);
props.children를 사용하여 자식 노드를 전달할 수 있다.