-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[김제완] sprint11 #669
The head ref may contain hidden characters: "React-\uAE40\uC81C\uC644-sprint11"
[김제완] sprint11 #669
Conversation
|
||
return ( | ||
<form id="signinForm" className="signin-form" onSubmit={handleSubmit(onSubmit)}> | ||
<div> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
inputField 를 공통 컴포넌트로 만들수 있을 것 같습니다. 또한, 에러메세지 뿐만 아니라 다른 상수값들도 모두 한곳에서 관리해볼수도 있을 것 같습니다.
export const INPUT_FIELD_SETTINGS = {
email: {
id: "email",
placeholder: "이메일을 입력해 주세요.",
validation: {
required: "이메일을 입력해 주세요.",
pattern: {
value: /^\S+@\S+$/i,
message: "이메일 형식이 올바르지 않습니다.",
},
},
},
password: {
id: "password",
placeholder: "비밀번호를 입력해 주세요.",
validation: {
required: "비밀번호를 입력해 주세요.",
minLength: {
value: 8,
message: "비밀번호 길이를 8자리 이상 입력해주세요.",
},
},
},
};
}); | ||
if (response.ok) { | ||
nextUser = await response.json(); | ||
} else if (response.status === 401) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
401일 경우에 적절한 에러 핸들링을 추가해주면 좋습니다. HTTP 상태 코드 401은 인증되지 않은(Unauthorized) 상태를 나타내며, 사용자가 인증되지 않았음을 의미합니다. 이 상황에서는 사용자를 로그인 페이지로 리다이렉트하거나 인증이 필요한 처리를 요구할 수 있습니다.
|
||
const AuthContext = createContext<AuthContextType | null>(null); | ||
|
||
const BASE_URL = "https://panda-market-api.vercel.app"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
환경 변수(Environment variables)를 사용하여 API 엔드포인트와 같은 중요한 설정값들을 관리하는 것도 추천합니다. 중요한 정보를 소스 코드에 하드코딩하지 않고 환경 변수로 관리하면, 보안을 강화할 수 있습니다
const navigate = useNavigate(); | ||
const { user, login } = useAuth(); | ||
|
||
useEffect(() => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
회원가입 폼(SignUpForm)에서 로그인 상태를 감지하여 리다이렉트하는 useEffect를 사용하는 것보다는, 이 로직을 상위 컴포넌트에서 처리하는 것이 더 적절할 수 있습니다. 상위 컴포넌트에서는 사용자 상태를 감지하고, 필요할 때마다 자식 컴포넌트로 전달할 수 있습니다.
netlify 링크
요구사항
기본
회원가입
로그인
메인
심화
주요 변경사항
멘토에게