상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - useEffect 훅의 역할은 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
`<a href='https://sangseek.com/sangseeks/useEffect/ko'>useEffect</a>` 훅은 React에서 컴포넌트의 생명주기(lifecycle)와 관련된 작업을 수행하기 위해 사용되는 훅입니다. React는 컴포넌트가 렌더링될 때마다 특정 작업을 수행해야 할 필요가 있을 때가 많습니다. 예를 들어, API 호출, 이벤트 리스너 등록, 타이머 설정, 또는 컴포넌트가 언마운트될 때 정리 작업을 수행하는 등의 작업이 이에 해당합니다. `useEffect` 훅은 이러한 작업을 간편하게 처리할 수 있도록 도와줍니다. 기본 사<a href='https://sangseek.com/sangseeks/용법/ko'>용법</a> `useEffect`는 두 개의 인자를 받습니다. 첫 번째 인자는 실행할 함수이고, 두 번째 인자는 의존성 배열입니다. 의존성 배열은 이 배열에 포함된 값이 변경될 때마다 첫 번째 인자로 전달된 함수가 실행되도록 합니다. ```javascript import React, { useEffect } from 'react'; function MyComponent() { useEffect(() => { // 이곳에 부수 효과를 작성합니다. console.log('컴포넌트가 렌더링되었습니다.'); // 정리 함수 (optional) return () => { console.log('컴포넌트가 언마운트됩니다.'); }; }, []); // 빈 배열을 전달하면 컴포넌트가 처음 마운트될 때만 실행됩니다. return <div>안녕하세요!</div>; } ``` 의존성 배열 의존성 배열을 사용하면 특정 상태나 props가 변경될 때만 `useEffect`가 실행되도록 할 수 있습니다. 예를 들어, 특정 상태가 변경될 때마다 API를 호출하고 싶다면 다음과 같이 작성할 수 있습니다. ```javascript import React, { useState, useEffect } from 'react'; function MyComponent() { const [count, setCount] = useState(0); useEffect(() => { console.log(`Count가 ${count}로 변경되었습니다.`); // API 호출 등의 작업을 수행할 수 있습니다. return () => { console.log('정리 작업을 수행합니다.'); }; }, [count]); // count가 변경될 때마다 실행됩니다. return ( <div> <p>Count: {count}</p> <button onClick={() => setCount(count + 1)}>증가</button> </div> ); } ``` 정리 함수 `useEffect`에서 반환하는 함수는 컴포넌트가 언마운트되거나 의존성 배열의 값이 변경될 때 호출됩니다. 이를 통해 이벤트 리스너를 제거하거나 타이머를 정리하는 등의 작업을 수행할 수 있습니다. 이는 메모리 누수를 방지하고, 불필요한 작업을 줄이는 데 도움을 줍니다. 여러 개의 useEffect 하나의 컴포넌트 내에서 여러 개의 `useEffect`를 사용할 수 있습니다. 각 `useEffect`는 독립적으로 작동하며, 서로 다른 의존성을 가질 수 있습니다. 이를 통해 코드의 가독성을 높이고, 각 부수 효과를 명확하게 분리할 수 있습니다. ```javascript useEffect(() => { // 첫 번째 부수 효과 }, [dependency1]); useEffect(() => { // 두 번째 부수 효과 }, [dependency2]); ``` 결론 `useEffect` 훅은 React에서 부수 효과를 관리하는 데 필수적인 도구입니다. 이를 통해 컴포넌트의 생명주기와 관련된 다양한 작업을 효율적으로 처리할 수 있으며, 코드의 가독성과 유지보수성을 높이는 데 기여합니다. React의 함수형 컴포넌트에서 상태 관리와 함께 `useEffect`를 적절히 활용하면, 더욱 강력하고 반응적인 UI를 구축할 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기