1. mount commit
처음 화면에 붙은 직후
setup A
외부 시스템 연결
구독, 타이머, 요청처럼 React 밖의 작업을 연다.
mount 때 setup이 열리고, dependency가 바뀌면 새 setup 전에 이전 cleanup이 먼저 실행된다. unmount에서는 마지막 setup의 cleanup만 남는다.
구독, 타이머, 요청처럼 React 밖의 작업을 연다.
새 값으로 연결하기 전에 listener, timer, request를 정리한다.
이제 최신 props와 state를 읽는 effect가 시작된다.
cleanup은 다음 setup보다 앞에 있는 안전장치다.
deps 배열이 없으면 이 단계가 모든 commit 뒤 반복된다.
남은 구독, 타이머, AbortController를 해제해 누수를 막는다.
첫 commit 뒤 setup이 실행된다. StrictMode에서는 개발 중 재확인될 수 있다.
deps가 바뀌면 cleanup 이전값, setup 새값 순서로 실행된다.
더 이상 다음 setup은 없고 마지막 cleanup만 실행된다.