인프런 커뮤니티 질문&답변

현민님의 프로필 이미지
현민

작성한 질문수

웹 게임을 만들며 배우는 React

7-3. action 만들어 dispatch 하기

2:04초 onClickTd 왜 useCallback사용하는지 모르겠어요

해결된 질문

작성

·

307

·

수정됨

0

onClickTd를 useCallback으로 만드신 이유가 있을까요 ?

영상내에서 따로설명이 없으신거같아서요. 다시한번 짚어주세요 !!

 p.s ) 제가아는 useCallback은 제작한 함수를 재사용하기 위한것이잖아요 ..? 근데 onClickTd 라는 함수를 다른컴포넌트에서 사용안하지 않나요 ...?

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

useCallback을 쓰는 이유는 일단 자식 컴포넌트의 리렌더링을 막기 위해서입니다. 자식 컴포넌트는 부모가 리렌더링되면 무조건 같이 리렌더링 되는데 React.memo를 쓰면 그걸 막을 수 있습니다. 하지만 함수 prop은 계속 새 함수가 들어가므로 자식 리렌더링이 여전히 됩니다. 그걸 다시 또 막으려면 useCallback을 써야 합니다.

현민님의 프로필 이미지
현민

작성한 질문수

질문하기