기본 형태
// 실행순서 : A -> B -> A
useEffect(() => {
// 이 컴포넌트가 마운트될 때 실행되는 함수 (A)
return () => {
// 이 컴포넌트가 언마운트될 때 실행되는 함수 (B)
}
}, [])
Example - ToDo App
위 기본형태의 실행 순서를 ToDo로 예제로 보면
// todo가 A -> B로 변경될 때
useEffect(() => {
// todo가 바뀔 때마다 실행됨
return () => {
// todo가 바뀌기 직전에 실행됨 (cleanUp)
}
}, [todo])
todo가 A -> B로 변경될 때의 실행순서는 A useEffect → A cleanUp → B useEffect 로 이루어진다.
참고로 useEffect의 배열 부분인 의존성(Dependency)가 없으면 랜더링마다 useEffect가 실행되어 불필요한 랜더링이 발생할 수 있다.
useEffect(() => {
return () => {
}
})
'React' 카테고리의 다른 글
[React] Vite 4.0 이상에서 SVG 사용하는 방법 (2) | 2024.02.02 |
---|---|
[React] 환경변수를 .env → config.js 형태로 변경하기 (0) | 2024.01.30 |
[React] Option에 JSON 객체를 value에 넣기 - JSON.stringify (0) | 2023.07.24 |
[React] useState 리스트에서 index로 요소 제거하기 (0) | 2023.07.22 |
[React] Color Picker 그라데이션 칩 만들기 (No Library) (0) | 2023.06.24 |