작성
·
157
0
제가 바르게 이해하고 있다면, useCallback은 필요없지 않은가요?
useCallback는 함수를 재정의 하지 않고 , 1. 콜백함수가 호출되면서 2.depth부분이 바뀌었을때의 두 조건이 충족해야 다시 재정의 한다고 알고 있습니다. 위 커스텀훅에서는 [] depth가 비어져있기에 첫 마운트 했을때만 작동하고 어떠한 움직임도 없어야 하기에 함수 내 setValue의 기능을 수행 하지 않는다는 뜻인데, console.log('몇번 렌더링');으로 찍어보니깐 다른 곳에서 useInput 을 사용할때마다 커스텀훅 페이지를 리렌더링 하기때문에 애초에 useCallback이 무의미한 것이 아닌가요?
애초에 다른 모듈에 있기에 useCallback은 의미가 없는게 아닌가 궁금합니다
답변 1
0
해당 커스텀 훅이 재실행될 때마다 handler 함수를 계속 새로 생성하는 것을 막는 역할을 합니다. 커스텀훅은 컴포넌트가 렌더링될 때마다 재실행되고요.
"1. 콜백함수가 호출되면서" 이 부분이 틀렸습니다.