리렌더링 발생 원인 지도

state, props, context, 부모 렌더는 모두 컴포넌트 함수 재실행의 출발점이 될 수 있다.

state

내 상태 변경

setState 호출 지점이 시작점이다.

props

새 값 전달

부모가 넘긴 값이나 참조가 바뀐다.

parent

부모 재실행

관련 없는 자식도 기본적으로 다시 호출된다.

context

공유 값 갱신

구독 중인 컴포넌트가 같은 변경을 받는다.

force

강제 업데이트

드물지만 수동으로 렌더 흐름을 밀어 넣는다.

핵심기준 리렌더링 자체보다 “필요 없는 범위까지 다시 계산되는가”가 최적화 판단의 출발점이다.