State는 컴포넌트의 인스턴스별로 나뉘어져 있다.
const [현재상태값, 업데이트하는 합수] = usestate(인자)
인자를 초기값으로 한다.
지금까지, 우리는 유저 이벤트 발생 시 상태를 업데이트 했습니다 (예: 클릭)
이는 매우 일반적이지만 상태 업데이트에 꼭 필요한 것은 아닙니다. 어떤 이유로든 상태를 업데이트할 수 있습니다.
코스 후반부에서, 완료된 Http 요청을 볼 수 있지만(여기서 반환된 Http 응답을 기반으로 상태를 업데이트하려고 함) 타이머가 만료되어 상태를 업데이트할 수도 있습니다 ( setTimeout()으로 설정).
자식 컴포넌트 매개변수에 props를 추가해서
props.사용자정의속성(자식컴포넌트에서 넘기고 싶은 데이터 변수);
부모컴포넌트에서는
<자식컴포넌트 사용자정의속성={속성값 자리에 사용자정의함수}>
부모컴포넌트 안에
const 속성값 자리에 사용자정의함수=(새로운변수이름=자식컴포넌트에서배개변수로넘긴데이터)=> {
const 부모컴포넌트에서사용할데이터의진짜새이름 = {
...(새로운변수이름=자식컴포넌트에서배개변수로넘긴데이터),
추가하고 싶은 거 id 등등
}
console.log(부모컴포넌트에서사용할데이터의진짜새이름) //부모컴포넌트까지 올라온 자식데이터 뜸
}
또는 데이터를 바로 쓸거면
const 속성값자리에있는사용자정의함수 = 새로운변수이름=자식컴포넌트에서배개변수로넘긴데이터 => {
console.log(새로운변수이름=자식컴포넌트에서배개변수로넘긴데이터)
}
props를 사용해서 부모컴으로부터 함수를 받고
자식컴에서 그 함수를 불러옴