• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    해결됨

useState관련 질문

22.09.05 15:37 작성 조회수 231

1

강의들으며 궁금한 점이 있어서 질문남깁니다.

 

1. state업데이트가 되면 코드 재실행이 일어난다고 했는데

코드 재실행이 어디서부터 어디까지인가요? function TimerComponent() 함수에서

맨 처음인 const부터 return의 끝부분까지 재실행되는건가요?

 

2. setTime이 state를 변경시키는 함수, setTime이 불리면 컴포넌트 렌더링일어남

강의 1:00에서 setTime(time+1)말고, setTime(time)이나 setTime()으로 해도Too many re-renders 에러가 나오는데

useState는 1번째 인자값의 변화와 상관없이, 2번째 인자가 나왔을 때 렌더링되는건가요?

그 렌더링을 이용해서 1번째 인자값을 바꾸는건지 궁금합니다

답변 1

답변을 작성해보세요.

1

  1. 이전에 해주셨던 질문에서 답이 되었을 것이라고 봅니다. 전체가 실행되지만 useState나 useEffect 같은 react에서 특별하게 관리되는 함수들은 재실행되지 않습니다

  2. 넵. 두번째 인자인 'state를 업데이트해주는 함수'가 호출되게 되면 다시 rendering된다고 보시면 됩니다. 그리고 해당 함수를 호출할 때 안에 들어간 값이 첫번째 인자인 "state"를 업데이트해주게 됩니다.

양규헌님의 프로필

양규헌

질문자

2022.09.10

답변감사합니다