useEffect Fetch

의존성 배열과 재요청 타이밍

useEffect의 의존성 배열은 데이터 요청이 언제 다시 실행될지 정한다. 값이 빠지면 오래된 요청 조건을 쓰게 된다.

데이터 페칭 실행 조건

request timing

배열 없음

렌더링마다 요청이 반복될 수 있어 루프 위험이 있다.

빈 배열

처음 마운트될 때 한 번 가져오는 초기 로딩에 맞다.

값 의존

userId나 query가 바뀔 때 새 조건으로 다시 요청한다.

클린업

언마운트나 다음 요청 전에 AbortController로 이전 요청을 정리한다.

renderdeps comparefetchset statecleanup
읽는 법

의존성 배열은 성능 옵션이 아니라 동기화 계약이다. effect 안에서 읽는 외부 값은 배열에 드러나야 한다.