HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🐣
프론트엔드 데브코스 4기 교육생
/
이동근팀
이동근팀
/
🦢
2차 MVP-2023년 10월 5일
/
useQuery 커스텀 훅의 options 를 파라미터로 열어서 사용하기

useQuery 커스텀 훅의 options 를 파라미터로 열어서 사용하기

페이지 및 기능
기타
상태
담당자

🛠️ Refactor

Description

현재 useQuery 커스텀 훅마다 suspense, refetchOnMount, staleTime, retry 등의 옵션이 내부에 정의되어 있어서
외부에서는 정확한 동작을 살펴보기 어려워지는 문제점이 있어요!
(어떤 훅이 suspense이고, 어떤 훅이 일반 fetching이고 등등..)
대신 옵션을 파라미터로 받아서 외부에서 인자를 전달하는 방식으로 개선해보면 어떨까 싶어요!
다만, 각각의 훅마다 옵션을 부여했던 이유는 각각 작업해주셨던 팀원분들이 히스토리를 알고 계실 것 같아서 의논하면서 수정할 작업이 될 것 같습니다 😊

To-do

useQuery 커스텀 훅 개선

기타

개선해야 하는 훅 예시

const useUserInfoQuery = (userId: string) => { return useQuery<User>({ queryKey: queryKey.users.detail(userId), queryFn: () => getUserInfo(userId), suspense: true }); };

개선 완료된 훅 예시

const useUserInfoQuery = (userId: string, options?: QueryOptions<User>) => { return useQuery<User>({ queryKey: queryKey.users.detail(userId), queryFn: () => getUserInfo(userId), ...options }); };

🛠️ Refactor

Description

현재 useQuery 커스텀 훅마다 suspense, refetchOnMount, staleTime, retry 등의 옵션이 내부에 정의되어 있어서
외부에서는 정확한 동작을 살펴보기 어려워지는 문제점이 있어요!
(어떤 훅이 suspense이고, 어떤 훅이 일반 fetching이고 등등..)
대신 옵션을 파라미터로 받아서 외부에서 인자를 전달하는 방식으로 개선해보면 어떨까 싶어요!
다만, 각각의 훅마다 옵션을 부여했던 이유는 각각 작업해주셨던 팀원분들이 히스토리를 알고 계실 것 같아서 의논하면서 수정할 작업이 될 것 같습니다 😊
 
https://github.com/prgrms-fe-devcourse/FEDC4_MUSSEUK_LETTER_Donggeun/issues/201