useCallback
해당 궁금증을 해소 하기 전 배경에는, useEffect dependency 배열에 함수가 들어가는 상황에 대해서 공부하고 있던 시점이다.
보통 커스텀 훅을 만들 때에는 해당 훅 컴포넌트의 props에 상태 값을 받아오고, 그 상태 값을 useEffect 내부 dependency배열에 넣어 동작을 처리 한다.
그렇다면 함수를 props로 받아올 땐 어떤가? 고민해보았다.
함수가 의존성 배열에 들어가는 이유
리액트 컴포넌트가 렌더링될 때마다 함수는 다시 생성된다.
자바스크립트에서는 함수가 일급 객체이므로, 동일한 이름의 함수라도 매 렌더링 시 새롭게 생성된 함수는 이전 함수와 다르게 취급된다.
읽는 시간 4분