HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🌟
Programmers 최종 플젝 6조
/
[프론트] TWL
[프론트] TWL
/
함수 내에서 setState직후 state가 변하지 않는 이유는?
함수 내에서 setState직후 state가 변하지 않는 이유는?
함수 내에서 setState직후 state가 변하지 않는 이유는?

함수 내에서 setState직후 state가 변하지 않는 이유는?

생성일
Dec 14, 2021 06:56 AM
태그
React
작성자
해결 완료

🔥 문제

notion image
이메일 중복체크를 하면서 원래 로직이라면 첫번째 setErrors에서 email값이 이메일을 입력해주세요라고 되어야된다. 하지만 그렇지 않고 ''으로 되어있는 경우가 발생했다.
만약 한번더 누르게 된다면 email에 잘 저장되어있는 경우를 발견했다.
예상으로는 맨 나중에 바뀌는 것으로 예상은 하지만 왜 그러는지 이유를 모르겠다.
 

⭐ 해결 방법

이 문제 해결 방법을 알았지만 해당 방법을 사용하지 않고 유효성 검증 로직을 두가지로 분리했다.
  1. 유효성 검증은 Input색깔을 변경
  1. 해당 인풋값이 없으면 해당 인풋 밑에 에러택스트를 표기
 
이 문제는 useState의 비동기적임을 확인해야됨. 추후 해결 예정
 

👏🏻 참고자료