컴포넌트의 속성(property)을 의미한다.
상위 컴포넌트로부터 전달받은 값으로 변하지 않는 값이며 마치 함수의 전달인자처럼 사용할 수 있다.
이때 props로 어떤 타입의 값도 넣어 전달할 수 있도록 객체의 형태를 가지고 있다.
<Child text = "i'm the eldest child"/>
function Child (props) {
return (
)
}
function Child (props) {
return (
<div className = "child">
<p>{props.text}</p>
</div>
)
}
컴포넌트의 태그 사이에 value를 넣어 전달하는 방법이다
<Child>I'm the eldest child</Child>
funtion Child () {
return (
<div>
<p>{props.children}</p>
</div>
)
컴포넌트의 사용 중 컴포넌트 내부에서 변할 수 있는 값으로 state에 변화가 생기면 리액트 컴포넌를 새롭게 호출하고, 리렌더링 된다.
state를 다루는 방법 중 하나로 useState
라는 함수를 제공한다.
import
롤 useState
를 불러온다.import {useState} from 'react'
useState
를 컴포넌트 안에서 호출한다. 일반적인 변수라면 함수가 끝날 때 사라지지만, state변수는 리액트에 의해 함수가 끝나도 사라지지 않는다.function Child () {
const [newState,setNewState] = useState(false);
return ()
}
state를 생성할 때 작성했던 set
을 사용하면 된다.
function Child () {
const [newState,setNewState] = useState(false);
const handleClick = (event) => {
setNewState(event.target.checked)
}
return (
<div>
<input type="checkbox" checked={newState} onChange={handleClick}/>
</div>
)