시점 차로 인해 유효성 검사가 제대로 실행되지 않는 오류가 발생했다.
const handlePwChange = (e) => {
setUserPassword(e.target.value);
const regex =
/^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{8,16}$/;
if (regex.test(userPassword)) {
setUserPasswordValid(true);
} else {
setUserPasswordValid(false);
}
};
const handlePwChange = (e) => {
const password = e.target.value;
setUserPassword(password);
const regex =
/^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{8,16}$/;
if (regex.test(password)) {
setUserPasswordValid(true);
} else {
setUserPasswordValid(false);
}
};