diff --git a/src/main.tsx b/src/main.tsx index 3bc23a8..448b333 100644 --- a/src/main.tsx +++ b/src/main.tsx @@ -9,6 +9,7 @@ import { GlobalStyles } from '@/styles/GlobalStyles'; import theme from '@/styles/theme'; import { BottomNavigationStyleConfig as BottomNavigation } from 'chakra-ui-bottom-navigation'; +// [May]: 여기 정의해두셔도 괜찮지만, 따로 파일 분리해도 좋을거같습니다..! const queryClient = new QueryClient({ defaultOptions: { queries: { @@ -19,6 +20,7 @@ const queryClient = new QueryClient({ }, }); +// [May]: 여기 정의해두셔도 괜찮지만, 따로 파일 분리해도 좋을거같습니다..! const chakraTheme = extendTheme({ components: { BottomNavigation, diff --git a/src/pages/Question/hooks/useAnswer.ts b/src/pages/Question/hooks/useAnswer.ts index 5da85a4..732f426 100644 --- a/src/pages/Question/hooks/useAnswer.ts +++ b/src/pages/Question/hooks/useAnswer.ts @@ -1,15 +1,20 @@ import { useMutation } from '@tanstack/react-query'; import { createAnswer } from '@/pages/Question/api/fetchAnswer'; import { CreateAnswerRequest, CreateAnswerResponse } from '../types/answer'; +import { useNavigate } from 'react-router'; export const useCreateAnswer = () => { + const navigate = useNavigate(); + return useMutation({ mutationFn: createAnswer, onSuccess: (data) => { console.log('Answer created successfully:', data); }, + // [Should] 단순히 로그를 찍는것보다 회원가입 / 로그인 페이지로 리다이렉트 시켜주는게 사용자 경험에 더 좋을거같습니다 onError: (error) => { console.error('Failed to create answer:', error); + navigate('/login'); }, }); }; diff --git a/src/pages/Register/index.tsx b/src/pages/Register/index.tsx index 82b58a0..56438a8 100644 --- a/src/pages/Register/index.tsx +++ b/src/pages/Register/index.tsx @@ -96,6 +96,10 @@ export const RegisterPage = () => { return; } + // [Question] 백엔드랑 합의된 로그인 / 회원가입 유효성 검사가 존재하나요? + // [Should] 존재한다면 zod등을 이용해서 유효성 검사 및 사용자에게 피드백(비밀번호가 형식에 안맞음 등,,)을 알려주는게 좋을거같습니다. + // 현재 비밀번호 유효성 검사에 실패하여 회원가입이 실패되는데, 유저 입장에서는 무었때문에 거절 당한지 알수가없습니다 + // 모든 조건이 충족되면 로컬스토리지에 저장 localStorage.setItem('registerEmail', data.email); localStorage.setItem('registerPassword', data.password);