-
Notifications
You must be signed in to change notification settings - Fork 51
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
[임건우] Week15 #544
The head ref may contain hidden characters: "part3-\uC784\uAC74\uC6B0-week15"
[임건우] Week15 #544
Conversation
**
** |
**
** 로컬 실행으로 확인하고 싶은데 실행이 안되네요. (로그인 이후 오류) 🥲 |
"^@/public/(.*)$", | ||
"^[./]" | ||
], | ||
"importOrderSortSpecifiers": true, |
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.
import 문 정렬 좋습니다. importOrderSortSpecifiers 옵션의 경우 협업 시에도 많이 도움이 되서 이번 프로젝트에 쓰셔도 좋을 것 같네요!
getFolders({ headers: { Authorization: `Bearer ${accessToken}` } }); | ||
getLinks({ headers: { Authorization: `Bearer ${accessToken}` } }); |
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.
공통 부분은 변수화 해주시는 것이 좋아보이네요!
getFolders({ headers: { Authorization: `Bearer ${accessToken}` } }); | |
getLinks({ headers: { Authorization: `Bearer ${accessToken}` } }); | |
const headers = { Authorization: `Bearer ${accessToken}` } | |
getFolders({ headers }); | |
getLinks({ headers }); |
newPasswordErrorMessage || | ||
newPasswordCheckErrorMessage | ||
) | ||
const onSignup = async () => { |
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.
현재 formData를 통신 요청 시 전달하기 위해 watch를 사용해 필요한 값들을 상태
로 관리하고 있습니다.
저번 멘토링에서 설명드린 것처럼 react-hook-form은 기존에 상태를 이용해 form의 값을 관리하는 제어 컴포넌트
대신에 비제어 컴포넌트
로 관리할 수 있다는 것이 가장 큰 장점입니다.
가능하면 제가 아래 코드에 작성해 둔 것처럼 onSubmit의 인자로 받는 것이 가장 react-hook-form 다운 방식입니다.
요구사항에 따라서는 watch가 반드시 필요한 경우도 있으나 되도록이면 비제어 컴포넌트로 관리하는 방식을 추천드립니다.
const onSignup = async () => { | |
const onSignup = async (formData: FormValues) => { | |
const { email, password, passwordCheck } = formData; |
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.
다만, 이 부분을 변경하게 되면 이 코드에서 많은 부분이 바뀌어야 하므로 시간 여유가 되시는 경우에 반영하시면 좋을 것 같아요!
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.
예를 들면 이메일, 비밀번호 등에 대한 validation이 onSignup 내에서 이루어져야 한다는 변경 사항이 필요해 보이네요.
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.
대신 비제어 컴포넌트
의 경우 코드의 복잡도가 감소하고, 성능적인 이점이 있다는 장점이 있으니 꼭 다른 구현 시에서라도 활용하시는 것을 추천드립니다! 🤗🤗
요구사항
기본
심화
주요 변경사항
배포주소
https://linkbrary-gw-lim.vercel.app/
멘토에게