웹페이지를 구현할 때 핸드폰번호, 비밀번호, 이메일 양식에 따라 유효성 검사를 해야할 때가 있다.
react 에서 유효성 검사하기는 아래와 같다.
import React from 'react';
const Test = () => {
// 핸드폰번호 유효성 검사
const checkPhonenumber = (e) => {
// '-' 입력 시
var regExp = /^01(?:0|1|[6-9])-(?:\d{3}|\d{4})-\d{4}$/
// 숫자만 입력시
var regExp2 = /^01(?:0|1|[6-9])(?:\d{3}|\d{4})\d{4}$/
// 형식에 맞는 경우 true 리턴
console.log('핸드폰번호 유효성 검사 :: ', regExp.test(e.target.value))
}
//비밀번호 유효성 검사
const checkPassword = (e) => {
// 8 ~ 10자 영문, 숫자 조합
var regExp = /^(?=.*\d)(?=.*[a-zA-Z])[0-9a-zA-Z]{8,10}$/
// 형식에 맞는 경우 true 리턴
console.log('비밀번호 유효성 검사 :: ', regExp.test(e.target.value))
}
// 이메일 유효성 검사
const checkEmail = (e) => {
var regExp = /^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/i
// 형식에 맞는 경우 true 리턴
console.log('이메일 유효성 검사 :: ', regExp.test(e.target.value))
}
return(
<div>
<div>
<input type='text' placeholder='phone number' onBlur={checkPhonenumber}/>
</div>
<div>
<input type='password' placeholder='password' onBlur={checkPassword} />
</div>
<div>
<input type='email' placeholder='email' onBlur={checkEmail} />
</div>
</div>
)
}
export default Test;
위와 같이 간단하게 예제를 작성하게 되면 아래와 같은 결과가 나온다.
핸드폰번호 유효성 검사할 때 나는 '-' 가 붙어있는 것을 기준으로 했는데 필요에 따라 숫자만 입력한 경우에 대한 검사를 시행해도 좋다.
비밀번호 유효성 검사 시에도 예제는 영문, 숫자 포함 8~10 글자지만 필요에 따라 변경해서 사용하면 된다.
결과는 아래와 같다.
- 유효한 값일 때
- 유효하지 않은 값일 때
'React' 카테고리의 다른 글
[React] 통화 화폐 단위 표시하기 - 떽떽대는 개발공부 (0) | 2021.02.25 |
---|---|
[React] crypto 를 이용하여 암호화 하기 - 떽떽대는 개발공부 (0) | 2021.02.24 |
[React] react 에서 우편번호 찾기 api 사용하기 - 떽떽대는 개발공부 (1) | 2021.02.22 |
[React] react 에서 다국어 처리 적용하기(1) - 떽떽대는 개발공부 (0) | 2021.02.19 |
[React] react 에서 이미지 적용하기 - 떽떽대는 개발공부 (0) | 2021.02.15 |
댓글