• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 React 게시판 [Lifecycle과 useEffect 2]

[Lifecycle과 useEffect 2]

4 글 보임 - 1 에서 4 까지 (총 4 중에서)
  • 글쓴이
  • #85017

    이종열
    참가자
    1. useEffect(()=>{ 실행할코드 })
    2. useEffect(()=>{ 실행할코드 }, [])
    3. useEffect(()=>{ return ()=>{ 실행할코드 } })
    4. useEffect(()=>{ return ()=>{ 실행할코드 } }, [])
    5. useEffect(()=>{ 실행할코드 }, [state1])
    
    오늘 배운 내용입니다.
    위 코드들은 처음 페이지 입장 시 , 기본적으로 한번 실행하고 이후에 재랜더링이 일어나면
    추가적으로 코드들이 실행한다고 배웠습니다. 각각 실험 해보니 그렇더라구요
    
    그런데  3번째 코드는 설명 듣기로 return안의 내용이 먼저 실행된다고 하셨는데 , 확인해보니 
    useEffect부분이 먼저 출력이 되었는데 이건 왜그런가요??
    
    3
    
    #85027

    codingapple
    키 마스터
    index.js에 <StrictMode> 켜져있으면 컴포넌트가 2번씩 렌더링될 수 있습니다
    #85050

    이종열
    참가자
    네, 그래서 두 번 나오게 안 하려면 StrictMode 제거하라고 하셨었습니다.  2번 나오는 건 알겠는데
    
    return 안 내용이 먼저 실행되고 useEffect가 실행되어야하는거 아닌가요??
    확인 내용으로는     
    
    1. useEffect   ->> 여기서 return 이 왜 먼저 나오지 않나요??
    2. return 
    3. useEffect
    4.return 
    5. useEffect
    6.return 
    
    
    
    #85060

    codingapple
    키 마스터
    return에 있는건 재렌더링이나 컴포넌트 삭제인 경우에만 실행해줘서그런듯요
4 글 보임 - 1 에서 4 까지 (총 4 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠