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

wodnjs306님의 프로필 이미지

작성한 질문수

처음 배우는 리액트 네이티브

기능 구현 - 로그인

setDisabled에서 쓰신 표현식을 뭐라고 하나요?

작성

·

630

0

선생님 영상 마지막에 로그인 버튼 비활성화/활성화 주는 부분에서

이렇게 작성 하셨는데 여기서 setDisabled 이후 소괄호안에 작성하신 표현법이 이해가 잘 안됩니다. 

삼항연산자의 또다른 변형식인가요?

setDisabled( (email && password && !errorMessage) ? !disabled : disabled)

혹시 이렇게 작성하는면 문법에 어긋나나요??

(앞에 내용에 '공백삭제', '이메일검수' 정규표현식을 적용못하고있어서 강의영상만 보고 질문드립니다 ㅠㅠ)

답변 2

0

wodnjs306님의 프로필 이미지
wodnjs306
질문자

아하ㅎㅎ 선생님 충고대로 삼항연산자를 수정했더니 해결됐습니다! 감사합니다~~

0

김범준님의 프로필 이미지
김범준
지식공유자

안녕하세요 wodnjs306님

  

자바스크립트 and 연산자 입니다. 
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_AND 

작성해주신 코드는 문법에는 문제가 없지만, 동작하는데 문제가 있습니다.
작성해주신 코드는 삼항연산자의 식이 참일때마다 disabled의 반대를 적용하게 됩니다. 
조건이 변경되어도 식이 참일때 항상 같은 값이 disabled에 적용되야 하지만, 작성해 주신 코드는 매번 변경되게 됩니다.

"식이 참일때 disabled는 false 가 되어야 하고, 식이 거짓일때 disabled는 참이 되어야 합니다."
작성해주신 코드는 위의 조건을 만족시킬수가 없습니다. 

  

감사합니다