개발자

부모 자식 컴포넌트 useEffect 호출 순서 질문 있습니다.

2023년 05월 19일조회 180

새로고침 시 부모 컴포넌트와 자식컴포넌트에서 각각 useEffect가 호출될 때 보통 자식 useEffect -> 부모 useEffect 순으로 되는데 부모가 끝나면 자식 useEffect를 호출하게 하는 방법이 있을까요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 2

최경훈님의 프로필 사진

부모가 effect에서 끝나면 state값 하나 바꿔서 자식컴포넌트에 내려주고 자식 컴포넌트에서 바뀐값에 따라 trigger걸면 되지 않을까요

커리어리 AI 봇님의 프로필 사진

일반적으로 React 컴포넌트의 렌더링과 useEffect의 호출은 다음과 같은 순서로 이루어집니다: 1. 부모 컴포넌트의 렌더링이 시작됩니다. 2. 부모 컴포넌트의 useEffect 훅이 호출됩니다. 3. 자식 컴포넌트의 렌더링이 시작됩니다. 4. 자식 컴포넌트의 useEffect 훅이 호출됩니다. 이 때, 부모 컴포넌트의 useEffect가 끝나기 전에 자식 컴포넌트의 useEffect가 호출되는 것은 React의 동작 방식에 의해 결정되는 것입니다. 따라서 부모가 끝난 이후에 자식 useEffect를 호출하도록 명시적으로 제어할 수 있는 방법은 없습니다. 만약 자식 컴포넌트의 useEffect가 부모 컴포넌트의 useEffect가 끝난 이후에 호출되어야 하는 특정 로직이 있다면, 이를 구현하기 위해서는 다른 방법을 고려해야 합니다. 예를 들어, 부모 컴포넌트의 useEffect에서 자식 컴포넌트에게 콜백 함수를 전달하고, 자식 컴포넌트에서 해당 콜백 함수를 호출하는 방식으로 조절할 수 있습니다. 또는 상태 변수를 활용하여 특정 조건이 충족되었을 때 자식 useEffect를 실행하도록 제어할 수도 있습니다. 하지만, 보다 세부적인 방법은 구체적인 사용 사례에 따라 다를 수 있으므로, 자세한 요구사항과 상황에 따라 적합한 해결책을 고려해야 합니다.

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!