Description
useState input 입력값 하나로 합치기
const [ email , setEmail ] = useState < string > ( '' ) ;
const [ password , setPassword ] = useState < string > ( '' ) ;
const [ confirmPassword , setConfirmPassword ] = useState < string > ( '' ) ;
에러도 하나로 합치기
const [ emailError , setEmailError ] = useState < string > ( '' ) ;
const [ passwordError , setPasswordError ] = useState < string > ( '' ) ;
const [ confirmPasswordError , setConfirmPasswordError ] = useState < string > ( '' ) ;
input 입력값 합치면 이것도 하나로 합칠 수 있음
const handleEmailChange = ( e : ChangeEvent < HTMLInputElement > ) => {
setEmail ( e . target . value ) ;
} ;
const handlePasswordChange = ( e : ChangeEvent < HTMLInputElement > ) => {
setPassword ( e . target . value ) ;
} ;
const handleConfirmPasswordChange = ( e : ChangeEvent < HTMLInputElement > ) => {
setConfirmPassword ( e . target . value ) ;
} ;
함수 만들기 굳.
const emailDuplicateCheck = ( email : string ) : boolean => {
const users : User [ ] = JSON . parse ( localStorage . getItem ( 'users' ) || '[]' ) ;
return ! users . some ( ( user ) => user . email === email ) ;
} ;
이름 헷갈림.
isEmailValid(이메일이 유효한가?) => 에러
if ( isEmailValid || isPasswordValid || isConfirmPasswordValid ) {
setEmailError ( isEmailValid ) ;
setPasswordError ( isPasswordValid ) ;
setConfirmPasswordError ( isConfirmPasswordValid ) ;
return ;
}
아마 여기서부터 이름이 잘못된 듯
const isEmailValid = validateEmail ( email ) ;
const isPasswordValid = validatePassword ( password ) ;
const isConfirmPasswordValid = validateConfirmPassword (
password ,
confirmPassword ,
) ;
이것도 이름 헷갈림. Not 이메일 중복체크를 했다??
if ( ! emailDuplicateCheck ( email ) ) {
setEmailError ( '이미 사용 중인 이메일입니다.' ) ;
return ;
}
강제 페이지 이동 사용 금지. useNavigate 훅 알아보기
window . location . href = '/signin' ;
로그인 페이지도 모두 같은 문제입니다.
입력 도중에 제대로 통과하면 에러메세지 지우면 좋을 듯
Reactions are currently unavailable
You can’t perform that action at this time.
useState input 입력값 하나로 합치기
mission/src/pages/SignUp.tsx
Lines 79 to 81 in efb1caa
에러도 하나로 합치기
mission/src/pages/SignUp.tsx
Lines 82 to 84 in efb1caa
input 입력값 합치면 이것도 하나로 합칠 수 있음
mission/src/pages/SignUp.tsx
Lines 86 to 96 in efb1caa
함수 만들기 굳.
mission/src/pages/SignUp.tsx
Lines 98 to 101 in efb1caa
이름 헷갈림.
isEmailValid(이메일이 유효한가?) => 에러
mission/src/pages/SignUp.tsx
Lines 112 to 117 in efb1caa
아마 여기서부터 이름이 잘못된 듯
mission/src/pages/SignUp.tsx
Lines 105 to 110 in efb1caa
이것도 이름 헷갈림. Not 이메일 중복체크를 했다??
mission/src/pages/SignUp.tsx
Lines 119 to 122 in efb1caa
강제 페이지 이동 사용 금지. useNavigate 훅 알아보기
mission/src/pages/SignUp.tsx
Line 133 in efb1caa
로그인 페이지도 모두 같은 문제입니다.