클래스 컴포넌트에서만 사용할 수 있었던 state(상태) 관리와 lifecycle(라이프 사이클) 관리 기능을 함수 컴포넌트에서도 사용할 수 있도록 연동(hook in)해주는 함수 ex) useState, useEffect ..
props란 컴포넌트의 속성값, 부모 컴포넌트로부터 전달받은 데이터를 지니고 있는 객체
<button onClick={props.test}>클릭</button>
컴포넌트 내부에서 가지고 있는 컴포넌트의 상태값을 의미하며, 해당 컴포넌트가 UI에 보여줄 정보를 결정할 때 사용할 수 있는 상태값이다.
useState 함수를 import한 후에 사용해야 한다. useState 함수는 Hook의 일종으로 내장되어 있는 react로부터 가져올 수 있다.
const [state, setState function] = useState(defaultValue)
defaultValue 있는 값은 변수명 state으로 사용 할 수 있다.
또한 setState function을 이용하여 상태값을 변경하면 할당 받은 state는 setState function함수로 바뀐 상태로 업데이트 된다.
과제 중 궁굼한 점 : useState를 사용해서 state의 값을 업데이트 후 바로 console.log를 찍어보면 값이 바뀌지 않고 한 박자 느리게, 즉시 반영되지 않는다. 그 이유는 useState는 비동기 처리로 반영 되기 때문에 값은 변해도 리렌더링을 통해 값을 다시 불러와야 한다고 한다. 따라서 이러한 경우 useefect를 사용하면 된다.