Skip to content

Commit

Permalink
Merge pull request #337 from Team-Lecue/hotfix/query-sync
Browse files Browse the repository at this point in the history
[ Hotfix ] 쿼리 키 싱크 맞추기
  • Loading branch information
Arooming authored May 12, 2024
2 parents c7d3424 + c3b034a commit 43cc2b1
Show file tree
Hide file tree
Showing 9 changed files with 33 additions and 25 deletions.
3 changes: 2 additions & 1 deletion src/Detail/hooks/useGetBookDetailLogin.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
import { useQuery } from 'react-query';
import { useNavigate } from 'react-router-dom';

import { QUERY_KEY } from '../../constants/queryKeys';
import { getBookDetailLogin } from '../api/getBookDetailLogin';

export default function useGetBookDetailLogin(bookUuid: string) {
const navigate = useNavigate();

const { data: bookDetail, isLoading } = useQuery(
['get-bookDetail-login', bookUuid],
[QUERY_KEY.favorite.atLecueBookDetail, bookUuid],
() => getBookDetailLogin(bookUuid),
{
onError: () => {
Expand Down
2 changes: 1 addition & 1 deletion src/History/components/MyLecueBook/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ function MyLecueBook(props: LecueBookProps) {
const navigate = useNavigate();

const deleteBookMutation = useDeleteMyBook();
const postFavoriteMutation = usePostFavorite('mypage');
const postFavoriteMutation = usePostFavorite('lecueBook');
const deleteFavoriteMutation = useDeleteFavorite('lecueBook');

const convertNoteCount = (noteNum: number) => {
Expand Down
2 changes: 1 addition & 1 deletion src/History/hooks/useDeleteMyBook.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ const useDeleteMyBook = () => {
},
onError: () => navigate('/error'),
onSuccess: () => {
queryClient.refetchQueries(QUERY_KEY.favorite.getLecueBookFavorite, {
queryClient.refetchQueries(QUERY_KEY.favorite.atLecueBook, {
exact: true,
});
},
Expand Down
2 changes: 1 addition & 1 deletion src/History/hooks/useGetMyBookList.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import { getMyBookList } from '../api/getMyBookList';
export default function useGetMyBookList() {
const navigate = useNavigate();
const { data: myBookList, isLoading } = useQuery(
QUERY_KEY.favorite.getLecueBookFavorite,
QUERY_KEY.favorite.atLecueBook,
() => getMyBookList(),
{
onError: () => {
Expand Down
2 changes: 1 addition & 1 deletion src/History/hooks/useGetMyFavorite.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import { getMyFavorite } from '../api/getMyFavorite';
export default function useGetMyFavorite() {
const navigate = useNavigate();
const { data: myFavoriteList, isLoading } = useQuery(
QUERY_KEY.favorite.getMypageFavorite,
QUERY_KEY.favorite.atMypage,
() => getMyFavorite(),
{
onError: () => {
Expand Down
7 changes: 4 additions & 3 deletions src/constants/queryKeys.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
export const QUERY_KEY = {
favorite: {
getHomeFavorite: ['get-home-favorite'],
getMypageFavorite: ['get-mypage-favorite'],
getLecueBookFavorite: ['get-lecueBook-favorite'],
atHome: ['get-home-favorite'],
atMypage: ['get-mypage-favorite'],
atLecueBook: ['get-lecueBook-favorite'],
atLecueBookDetail: 'get-bookDetail-favorite',
},
nickname: {
getNickName: ['get-nickname'],
Expand Down
17 changes: 10 additions & 7 deletions src/libs/hooks/useDeleteFavorite.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,27 +11,30 @@ const useDeleteFavorite = (state: string, bookUuid?: string) => {
const handleRefetchQueries = (state: string, bookUuid?: string) => {
switch (state) {
case 'home':
queryClient.refetchQueries(QUERY_KEY.favorite.getHomeFavorite, {
queryClient.refetchQueries(QUERY_KEY.favorite.atHome, {
exact: true,
});
break;

case 'mypage':
queryClient.refetchQueries(QUERY_KEY.favorite.getMypageFavorite, {
queryClient.refetchQueries(QUERY_KEY.favorite.atMypage, {
exact: true,
});
break;

case 'lecueBook':
queryClient.refetchQueries(QUERY_KEY.favorite.getLecueBookFavorite, {
queryClient.refetchQueries(QUERY_KEY.favorite.atLecueBook, {
exact: true,
});
break;

case 'lecueBookDetail':
queryClient.refetchQueries(['get-bookDetail-login', bookUuid], {
exact: true,
});
queryClient.refetchQueries(
[QUERY_KEY.favorite.atLecueBookDetail, bookUuid],
{
exact: true,
},
);
break;
}
};
Expand All @@ -42,7 +45,7 @@ const useDeleteFavorite = (state: string, bookUuid?: string) => {
},
onError: () => navigate('/error'),
onSuccess: () => {
handleRefetchQueries(location, bookUuid);
handleRefetchQueries(state, bookUuid);
},
});
return mutation.mutate;
Expand Down
2 changes: 1 addition & 1 deletion src/libs/hooks/useGetFavorite.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ const useGetFavorite = () => {
const navigate = useNavigate();

const { isLoading: isLoadingFavorite, data: favorite } = useQuery({
queryKey: QUERY_KEY.favorite.getHomeFavorite,
queryKey: QUERY_KEY.favorite.atHome,
queryFn: () => getFavorite(),
onError: () => navigate('/error'),
refetchOnWindowFocus: false,
Expand Down
21 changes: 12 additions & 9 deletions src/libs/hooks/usePostFavorite.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,25 @@ import { useNavigate } from 'react-router-dom';
import { QUERY_KEY } from '../../constants/queryKeys';
import postFavorite from '../api/postFavorite';

const usePostFavorite = (state: string, bookUuid?: string) => {
const usePostFavorite = (location: string, bookUuid?: string) => {
const navigate = useNavigate();
const queryClient = useQueryClient();

const handleRefetchQueries = (state: string, bookUuid?: string) => {
switch (state) {
case 'mypage':
queryClient.refetchQueries(['get-my-lecueBook'], {
const handleRefetchQueries = (location: string, bookUuid?: string) => {
switch (location) {
case 'lecueBook':
queryClient.refetchQueries(QUERY_KEY.favorite.atLecueBook, {
exact: true,
});
break;

case 'lecueBookDetail':
queryClient.refetchQueries(['get-bookDetail-login', bookUuid], {
exact: true,
});
queryClient.refetchQueries(
[QUERY_KEY.favorite.atLecueBookDetail, bookUuid],
{
exact: true,
},
);
break;
}
};
Expand All @@ -30,7 +33,7 @@ const usePostFavorite = (state: string, bookUuid?: string) => {
},
onError: () => navigate('/error'),
onSuccess: () => {
handleRefetchQueries(state, bookUuid);
handleRefetchQueries(location, bookUuid);
},
});
return mutation.mutate;
Expand Down

0 comments on commit 43cc2b1

Please sign in to comment.