리액트 useState 초기화
초기값으로 할 때
useState(초기값)
이 들어가는데, 초기값이 함수의 실행결과이어야 하는 경우에
만약 함수가 aA 라면
[state, setState]= useState(aA())
이렇게 하는게 아닌, useState(()=>aA())
로 전달하면 리액트에서 이 useState를 쓰는 컴포넌트가 리렌더링될 때 이 함수실행을 다시 하지 않음
초기값만 쓸 건데 다시 함수를 재 실행할 필요도 없기 때문
그리고
리액트에서 state로 함수가 오면, '이건 한번만 실행하라는 의미로 이렇게 왔구나' 해서
이 컴포넌트가 처음에 렌더링됐을 때만 이 함수를 실행해서 결과값을 상태로 받고(즉, 함수의 결과값이 state의 타입으로 결정),
리렌더링시에는 다시 이 함수를 재 실행하지 않게 할 수 있음.
댓글을 불러오는 중...