Skip to content
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

[Design] 비밀번호 재설정 뷰 GUI 반영 #321

Merged
merged 14 commits into from
Nov 14, 2024

Conversation

namdaeun
Copy link
Member

@namdaeun namdaeun commented Nov 10, 2024

해당 이슈 번호

closed #320


체크리스트

  • 🔀 PR 제목의 형식을 잘 작성했나요? e.g. [feat] PR을 등록한다.
  • 💯 테스트는 잘 통과했나요?
  • 🏗️ 빌드는 성공했나요?
  • 🧹 불필요한 코드는 제거했나요?
  • ✅ 컨벤션을 지켰나요?
  • 💭 이슈는 등록했나요?
  • 🏷️ 라벨은 등록했나요?
  • 💻 git rebase를 사용했나요?
  • 🙇‍♂️ 리뷰어를 지정했나요?

💎 PR Point

export type SupportingText = {
  text: string;
  type: 'default' | 'success' | 'error';
};


  const [emailSupportingText, setEmailSupportingText] = useState<SupportingText>({
    text: SUPPORTING_TEXT.EMAIL_AUTH,
    type: 'default',
  });

모든 인풋에 supportingText가 있는 방식으로 뷰가 바뀌어서 해당 값들을 관리해줄 수 있는 커스텀 훅을 만들었습니다.
type은 default, success, error가 있으며, 이메일 인증을 거치는 PasswordAuthPage의 경우는 mutation 함수 에러 여부에 따라 supportingText를 변경해줘야 해서 set함수를 페이지 내에서 사용해주었습니다.
비밀번호 재설정 PasswordResetPage에서는 mutate 함수 성공 여부에 따라 에러 상태를 변경해주는 게 아니라서 커스텀 훅 내에서 set함수로 상태를 재설정해주었습니다.

그리고 SupportingText 컴포넌트에서 기존에는 isNotice, isError의 prop이 있었으나, 맥락상 초록색은 성공 했을 때를 지칭하고 있어서isNotice -> isSuccess로 변경했습니다 !


📌스크린샷 (선택)

2024-11-11.3.13.36.mov
2024-11-11.3.15.12.mov
2024-11-11.1.01.28.mov

Copy link

🚀 Storybook 확인하기 🚀

Copy link

🚀 Storybook 확인하기 🚀

Copy link

🚀 Storybook 확인하기 🚀

Copy link
Contributor

@wuzoo wuzoo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨네요 !! LGTM ~

Comment on lines +77 to +83
useEffect(() => {
handlePasswordMessage(form.updatedPassword);
}, [form.updatedPassword, handlePasswordMessage]);

useEffect(() => {
handlePasswordCheckerMessage(form.updatedPassword, form.updatedPasswordChecker);
}, [form.updatedPassword, form.updatedPasswordChecker, handlePasswordCheckerMessage]);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

얘네는 무슨 기능때매 이펙트로 쓴거죠 ??

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

입력하는 password와 passwordChecker가 바뀔 때마다 supportingText도 그에 맞게 반응해야해서 불가피하게 useEffect를 사용했습니다. 다른 방법이 있을까요 ..?

Copy link
Contributor

@Bowoon1216 Bowoon1216 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

빛보다 빠른 당니님 수고하셨습니다! LGTM 👍

Copy link
Contributor

@rtttr1 rtttr1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

역시 앱잼3회 리드1회 개발자 남다은님! 점점 범접할 수 없는 개발자가 되어가시네요.. LGTM 입니다!!

mutationFn: () => reSendEmail(email),
mutationFn: () => {
return reSendEmail(email);
},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

두 코드가 똑같이 동작할것 같은데 어떤점 때문에 return을 해주는 형식으로 바꾼거죠?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저렇게 리턴을 해줘야 컴포넌트 내에서 .mutate로 접근이 가능하더라구요 !

codeSupportingText,
setCodeSupportingText,
};
};
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

재사용이 되는 훅인가요? 제가 못 찾은 건지 한번 밖에 사용되지 않는 것 같은데 훅으로 빠져있어서 단순하게 가독성을 위해 분리한건지 궁금하여 여쭈어봅니다!

Copy link
Member Author

@namdaeun namdaeun Nov 14, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

재사용성 보다는 가독성을 위해서 분리한 게 더 크긴 합니다 !!
부가적 설명을 더하자면 code 인풋의 supportingText와 이메일 입력 인풋의 supportingText가 달라서 이 둘을 따로 관리해줬고 둘 모두 supportingText에 대한 상태를 관리해주기 때문에 일단 커스텀 훅으로 분리했습니다.

@namdaeun namdaeun merged commit cc67172 into develop Nov 14, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

비밀번호 재설정 뷰 GUI 반영
4 participants