inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

프로젝트로 배우는 React.js

23 블로그 리스트 데이터 받아오기 (useEffect)

UserEffect 빈 배열 사용 질문입니다

132

좀 해

작성한 질문수 4

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

UserEffect 빈 배열 사용하면 처음 한번만

실행된다고 하는데

그러면 조건문으로 posts 체크해서 사용해도 되나요?

왠지 유저이펙트보다 이프문이 더 가벼울것 같아서

질문드립니다

react redux es6

답변 2

0

코지 코더

useEffect와 빈배열을 사용하면 처음 렌더링 될때 한번만 실행이 됩니다.

컴포넌트가 처음 렌더링 되고도 리렌더링 되는 경우가 있습니다.

state가 변경되거나 props가 변경되는 경우 등 컴포넌트 리렌더링 되는 경우가 있습니다.

리렌더링 될때마다 if문은 다시 실행이 되지만 useEffect 빈배열을 사용할 경우 다시 실행되지 않습니다.

그래서 처음 한번만 실행 시킬 경우는 useEffect를 사용하셔야 합니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 좀 해님.

useEffect 함수는 React 컴포넌트의 사이드 이펙트를 처리하기 위한 유용한 도구입니다. useEffect의 두 번째 매개변수로 빈 배열 []를 넘기면 컴포넌트가 처음 렌더링될 때 한 번만 실행됩니다. 이는 주로 한 번만 호출해야 하는 초기 데이터 로딩 같은 경우에 사용됩니다.

질문 주신 부분에 대해, useEffect와 조건문을 비교할 때 각각의 역할을 고려해보아야 합니다. 조건문은 특정 논리적 조건을 확인하기 위한 것이고, useEffect는 특정 이벤트(예: 컴포넌트가 화면에 처음 나타날 때)를 기준으로 함수를 실행하는데 사용됩니다. 따라서 useEffect로 처리할 수 있는 사이드 이펙트를 조건문으로 대체하는 것은 적합하지 않을 수 있습니다.

관련된 유사한 질문이 있었는데요, 아래 링크에서 더욱 심화된 이해를 도와드릴 수 있는 답변을 확인하실 수 있습니다:
- UserEffect 사용법에 대한 질문과 답변

위 답변에서는 useEffect가 여러 번 실행되는 경우의 해결법에 대해서도 다루고 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Pagination 페이지 별 데이터 불러오기 오류

0

247

1

설명이 부족 한 듯..

0

292

1

pagination nav가 안보여요

0

213

1

블로그 낫 파운드 ㅠㅠ

0

242

1

return (<div></div>)

0

426

2

useState 에 대해

0

212

1

에러떠요..

0

525

2

useCallback 의존성 배열

0

367

1

인자가 필수로 들어가야 하는지 궁금합니다

0

393

1

AxiosError: Network Error가 뜹니다

0

11291

3

리액트 설치하려고 하니 에러가 뜹니다

0

299

1

23강 localhost 질문드립니다!!

0

587

5

renderBlogList 함수는 순수함수가 아니어도 괜찮은가요?

0

283

1

페이지네이션 버그 있습니다.

0

398

1

글 삭제 기능 구현 방법

0

311

1

react-router-dom 버전 업그레이드에 따른 문제

0

408

1

state가 업데이트되는 기준이 궁금합니다.

0

300

1

id가 두번 찍혀요

0

263

2

error handling 2 => ShowPage.js, BlogForm.js에서 에러가 납니다.

0

458

2

에러 핸들링에서 토스트가 2개씩 뜹니다..

0

434

2

36 블로그 db에서 받아와서 화면에 보여주기 에서

0

265

1

13번째 DB에 저장을 따라하고 있습니다.

0

405

2

useParams 가 동작하지 않습니다.

0

811

2

toastSlice를 store에등록할 때 질문있습니다.

0

253

1