
[React/Hooks] 불필요한 리렌더링 방지하는 방법과 useCallback
·
🖥️ Front-End/React
useCallback이 뭔지 모르겠어요 ㅜㅜ 리액트는 컴포넌트의 상태가 변경되면 리렌더링을 진행한다고 useState편에서 설명했다 리액트는 리렌더링을 진행하면서 컴포넌트의 코드를 위에서부터 다시 읽어내는데이 과정에서 함수를 만나게 된다면, 똑같은 함수여도 새롭게 메모리에 할당해 버리는 것이다리액트 : ㅎㅎ 아래와 같은 코드가 있다고 가정해보자 (설명을 위해 많은 부분을 생략한 코드임)...const handleClick = () => { doSomething();} 수상한 버튼 ... 이 버튼 위에 뭔가 바뀌어서 컴포넌트가 리렌더링 된다면 버튼은 전혀 바뀌지 않았는데, props 받고 있는 handleClick의 참조값이 변경되어(리액트가 새롭게 메모리에 할당해버렸기 때문)버튼이 새롭게 렌더링 되어버리..