inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

state 에 대하여 질문있습니다.

해결된 질문

178

gkdlsb1234

작성한 질문수 14

0

const onChangeEmail = (event) => {
    console.log(event.target.value);
    setEmail(event.target.value);
    console.log("!@# ", email);
    if (email === "") {
      alert();
    }

위의 코드를 실행할경우

가장 첫 입력시 아래와 같은 문제가 발생합니다.
(이메일 입력란에 'ㅁ' 입력)

첫번째 console.log envent.target.value는 정상적으로 출력되며

두번째 console.log는 "!@#" 을 제외한 email이 출력되지 않습니다. "!@#"만 출력됨

if문의 경우 공백으로 인식해서 true 동작하여 출력이 되고 있습니다.

원인은 무엇인가요?

추가로 event 의 문제인가 싶어
onChange가 아닌 onKeyUp 을 사용 할 경우에는
f12 개발 디버깅쪽 console 에 error 표시가 잔뜩 발생합니다.

이유가 무엇인가요?

==================================
email input tag에 최초 입력 시
아래의 코드처럼 onChange 함수안에 지역변수 testb 에 할당하는 event.target.value 는 출력되지만
state 에 할당된 email 은 한반작 늦은? 출력이 됩니다.
ex) input box 'ㅁ' 입력 시 결과
state email = '' 공백출력
지역변수 testb = 'ㅁ' 출력

const onChangeEmail = (event) => {
    let testb = event.target.value;
    alert(testb);
    console.log(event.target.value);
    setEmail(event.target.value);
    console.log("!@# ", email);

 

설명 부탁드립니다.

react node.js seo graphql next.js

답변 1

0

노원두

안녕하세요! gkdlsb1234님!

해당 내용은 setState의 원리 수업에서 등록 버튼 활성화 시키기라는 주제로 다루고 있습니다!^^
해당 수업을 수강해주세요!

fetchBoardsOfMine, fetchBoardsCountOfMine 에러 문의드립니다

0

40

1

댓글 기능 구현 중 질문드립니다.

0

67

1

쿠폰코드 발급

0

139

2

example 서버 플레이그라운드, API 접속 모두 안됩니다.

0

87

2

문의드립니다!! ㅠㅠ

0

102

2

graphql 백엔드 서버가 포폴용 빼곤 접속이 안됩니다.

0

78

2

_app.js 작성 이후로 에러가 발생하네요

0

95

2

학습자료

0

71

2

학습자료가 안열립니다.

0

51

2

플레이 그라운드 퀴즈 문제 질문이 있습니다.

0

61

0

기존강의 구매자, 업데이트 끝인가요?

0

110

3

업데이트 버전 수강

0

89

2

완벽한 프론트엔드

0

136

2

나만의 쇼핑몰 샘플 페이지 접속 확인부탁드립니다.

0

84

1

graphql 접속이 안됩니다.

0

101

2

const, let 사용 질문 드립니다.

0

71

2

싸이월드 만들기 1탄 피드백 부탁드립니다.

0

122

2

회원가입 과제 피드백 부탁드립니다.

0

81

2

styled.span / styled.input "CSS 자동완성"

0

47

1

쿠폰 발급 관련

0

167

2

서버 502 error

0

247

2

쿠폰 다시 부탁드려도 될가여?

0

140

2

a태그 패딩했을때 왜 크기가 줄어들지 않고 늘어나나요

0

185

2

2분 44초 질문

0

132

3