HTML · CSS · JavaScript · React · Git
React · 상황 설명형 · 2026년 6월 26일 공개 · 2026년 8월 10일 검토

useEffect는 언제 사용할까

컴포넌트가 렌더링된 뒤 어떤 코드를 언제 실행해야 하는지 모르는 상황

React useEffect는 언제 사용할까
  1. 문제 상황 확인
  2. 짧은 코드로 재현
  3. 브라우저에서 결과 점검
useEffect는 언제 사용할까를 실습할 때 확인할 흐름입니다.

useEffect는 언제 사용할까에서 먼저 볼 부분

useEffect는 화면 렌더링 이후 외부 시스템과 맞춰야 하는 작업에 사용합니다. 데이터 요청, 문서 제목 변경, 구독 정리에 자주 쓰입니다.

useEffect는 렌더링 결과가 화면에 반영된 뒤 실행됩니다. 그래서 브라우저 API, 네트워크 요청, 외부 라이브러리 연결 같은 작업에 적합합니다.

의존성 배열은 effect가 다시 실행되는 기준입니다. 배열을 잘못 쓰면 너무 자주 실행되거나 필요한 순간에 실행되지 않을 수 있습니다.

모든 로직을 useEffect에 넣는 것은 좋지 않습니다. 화면 계산만으로 해결되는 값은 렌더링 중 계산하는 편이 더 단순합니다.

문서 제목 변경

function PageTitle({ title }) {
  React.useEffect(() => {
    document.title = title;
  }, [title]);

  return <h1>{title}</h1>;
}

이 예제는 그대로 복사해서 확인하는 것보다 한 줄씩 바꿔보는 쪽이 더 도움이 됩니다. 태그 이름, 선택자, 변수 이름, 함수 실행 위치를 조금씩 바꾸면 어떤 부분이 결과에 영향을 주는지 직접 확인할 수 있습니다.

useEffect는 언제 사용할까 비교 기준

상황useEffect 필요성
문서 제목 변경필요
API 데이터 요청대체로 필요
단순 합계 계산불필요
이벤트 구독 정리필요

잘못 작성했을 때 나타나는 흐름

React 글은 화면 조각, 데이터 흐름, 상태 변경 시점을 나누어 읽으면 헷갈림이 줄어듭니다.

값이 부모에서 내려오는지, 컴포넌트 내부에서 바뀌는지 구분하면 props와 state 관련 오류를 훨씬 빨리 찾을 수 있습니다.

작은 예제라도 렌더링 전후에 화면이 왜 바뀌는지 설명할 수 있어야 다음 단계의 Hook을 이해하기 쉽습니다.

브라우저에서 직접 확인하는 순서

먼저 화면에 나타나는 결과를 보고, 그다음 코드에서 방금 수정한 부분을 확인하세요. 결과가 예상과 다르다면 콘솔 오류, 파일 경로, 선택자 이름, 태그 닫힘, 실행 순서 중 하나가 흔한 원인입니다.

초보 단계에서는 정답 코드를 한 번에 외우기보다 실패한 코드와 수정한 코드를 나란히 비교하는 방식이 좋습니다. 이 글의 예제를 기준으로 작은 값을 바꿔보면 다음 글을 읽을 때도 기준이 더 선명해집니다.

실습 후 점검할 항목

  • 외부 시스템과 연결되는 작업인지 확인하기
  • 의존성 배열에 필요한 값을 넣기
  • 정리 함수가 필요한지 확인하기
  • 단순 계산을 effect로 옮기지 않기

작성 기준

AG FE Guide는 프론트엔드 입문자가 실제 학습 중 만나는 문제를 기준으로 예제와 확인 순서를 정리합니다. 본문은 공식 문서와 브라우저 동작 기준을 함께 참고해 주기적으로 검토합니다.