useEffect

✒️ 2025-05-28 10:47 내용 수정


useEffect(Effect Hook)

React가 Component를 렌더링한 후 side effect를 수행하도록 할 때 사용하는 Hook

useEffect(function() {}, []) 동작
두 번째 인자가 없을 때 매 렌더링 때 effect를 수행
두 번째 인자에 빈 배열을 전달 Component 첫 생성/렌더링 시점에만 effect를 수행
두 번째 인자에 조건을 넣음 첫 렌더링과 특정 조건에서만 effect를 수행
import {useState, useEffect} from 'react';

function Test() {
	const[count, setCount] = useState(0);

	// clean-up을 하지 않는 경우
	useEffect(() => {
		// 실행 내용
	}) // 매 렌더링 때 effect 실행 

	useEffect(() => {
		// 실행 내용
	}, []) // 최조 렌더링에만 effect 실행 

	useEffect(() => {
		// 실행 내용
	}, [count==1]) // count가 1일 때만 실행

	return(
		// tag 내용
	)
}
import {useState, useEffect} from 'react';

function Test() {
	const[count, setCount] = useState(0);
	
	// clean-up을 하는 경우
	useEffect(() => {
		function effectFunction() {
			// 실행할 내용
		}
		// DOM 업데이트 후 추가 실행 코드
		return function cleanup() { // 함수를 반환한다.
			// clean-up을 위한 동작
		}
	})

	useEffect(() => {
		function effectFunction() {
			// 실행할 내용
		}
		// DOM 업데이트 후 추가 실행 코드
		return function cleanup() {
			// clean-up을 위한 동작
		}
	}, []) // clean-up 1회만 실행
	

	useEffect(() => {
		function effectFunction() {
			// 실행할 내용
		}
		// DOM 업데이트 후 추가 실행 코드
		return function cleanup() {
			// clean-up을 위한 동작
		}
	}, [count==1]) // 특정 조건에서만 effect 실행

	return(
		// tag 내용
	)
}