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

home2 게시판 React 게시판 setState로 변경할 때 질문드립니다.

setState로 변경할 때 질문드립니다.

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

    ㅇㅇ
    참가자
    안녕하세요 코딩애플님
    setState를 두 번 작동시킬 때 리렌더링 되는 이유를 모르겠어서 질문드립니다.
    function App() {
      let [a, setA] = useState(1)
      console.log('렌더링')
      return (
        <div className="App">
          <header className="App-header">
            <div
              onClick={() => {
                console.log(a)
                setA(2)
              }}>
              {a}
            </div>
          </header>
        </div>
      )
    }
    
    1. {a}를 클릭하면 SetA(2)가 {a}를 2로 변경하도록 코드를 작성하였습니다.
    2. 그리고 App이 렌더링 될 때  console.log('렌더링')이 출력되도록 코드를 작성하였습니다.
    
    처음 {a}를 클릭하면 State가 변경되었을 때 리렌더링이 되기 때문에 렌더링이 콘솔에 출력되는 것이 이해가 됩니다.
    그러나 두번째로 클릭하였을 때는 이미 a는 2이고, State가 변경되는 것이 아님에도 렌더링이 출력되는 것이 이해가 되지 않습니다.
    세번째부터는 더이상 렌더링이 되지 않고 onClick이벤트만 작동합니다.
    State가 변경될때 App이 리렌더링 되는것으로 이해하고있었는데 왜 두번째 까지 리렌더링이 발생하는지 궁금해서 질문 드립니다!
    
    #70227

    codingapple
    키 마스터
    재렌더링되면 function안에있는 코드도 다시 읽고 지나갑니다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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