강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

민지홍님의 프로필 이미지
민지홍

작성한 질문수

만들면서 배우는 리액트 : 기초

15 상태 끌어올리기

set 부분이 좀 잘 이해가 안가서요

작성

·

284

2

코드를 짤 때

setCounter 하면 바로 counter 값이 할당되는게 아닐까요?

아래 첨부해드린 코드에서 console.log(counter); 한 부분에 찍혀있는 counter 값은 변경되기 전의 값이 찍히더라고요.

답변 1

1

진유림님의 프로필 이미지
진유림
지식공유자

오 넘 좋은 포인트예요~

이는 리액트가 setState를 비동기적으로 관리하기 때문입니다.

그래서 setState함수 아래에 state 를 찍어보아도 반영된 값이 아직 보이지 않는거죠.

브라우저 이벤트들이 다 끝날 때 리액트가 state change를 다 모아서 반영합니다.

아래 문서 읽어보시면 더 이해가 잘 가실거예요~

https://ko.reactjs.org/docs/faq-state.html#why-is-setstate-giving-me-the-wrong-value

 

33 setState 더 알아보기- 함수, 지연초기화

강의에서도 더 다룹니당

 

 

 

민지홍님의 프로필 이미지
민지홍

작성한 질문수

질문하기