Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions src/api/service/user-service/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,6 @@ export const userServiceRemote = () => ({
return baseAPI.get<User>(`/api/v1/users/me`);
},

// 8-1. 본인 프로필 조회(redirect skip)
getMeSkipRedirect: async () => {
return baseAPI.get<User>(`/api/v1/users/me`);
},

// 9. 이메일 중복 검사
getEmailAvailability: async (queryParams: GetEmailAvailabilityQueryParams) => {
return baseAPI.get<Availability>(`/api/v1/users/email/availability`, {
Expand Down
2 changes: 1 addition & 1 deletion src/app/(user)/profile/[userId]/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ const ProfileLayout = async ({ children, params }: Props) => {
queryClient
.fetchQuery({
queryKey: userKeys.me(),
queryFn: () => API.userService.getMeSkipRedirect(),
queryFn: () => API.userService.getMe(),
})
.catch(() => null),
]);
Expand Down
16 changes: 1 addition & 15 deletions src/app/(user)/profile/[userId]/page.tsx
Original file line number Diff line number Diff line change
@@ -1,33 +1,19 @@
'use client';

import { useRouter } from 'next/navigation';

import { use, useEffect } from 'react';
import { use } from 'react';

import { ProfileInfo } from '@/components/pages/user/profile';
import { useGetUser } from '@/hooks/use-user';
import { useUserGetMeSkipRedirect } from '@/hooks/use-user/use-user-get-me';

interface Props {
params: Promise<{ userId: string }>;
}

const ProfilePage = ({ params }: Props) => {
const router = useRouter();

const { userId: id } = use(params);
const userId = Number(id);

const { data: user } = useGetUser({ userId });
const { data: me } = useUserGetMeSkipRedirect();

useEffect(() => {
if (user?.userId === me?.userId) {
router.replace('/mypage');
}
}, [me?.userId, router, user?.userId]);

if (!user) return null;

return <ProfileInfo user={user} />;
};
Expand Down
2 changes: 1 addition & 1 deletion src/app/message/chat/[roomId]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ export default async function Page({ params }: { params: Promise<{ roomId: strin
const cookieStore = await cookies();
const accessToken = cookieStore.get('accessToken')?.value;

const me = await API.userService.getMeSkipRedirect();
const me = await API.userService.getMe();
const userId = me.userId;

return (
Expand Down
2 changes: 1 addition & 1 deletion src/app/message/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ export default async function MessagePage() {
const accessToken = cookieStore.get('accessToken')?.value || null;
const queryClient = getQueryClient();

const me = await API.userService.getMeSkipRedirect();
const me = await API.userService.getMe();
const userId = me.userId;

await Promise.all([
Expand Down
23 changes: 2 additions & 21 deletions src/hooks/use-user/use-user-get-me/index.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
import { useQuery } from '@tanstack/react-query';
import { useSuspenseQuery } from '@tanstack/react-query';

import { API } from '@/api';
import { userKeys } from '@/lib/query-key/query-key-user';
import { useAuth } from '@/providers';

export const useUserGetMe = () => {
const query = useQuery({
const query = useSuspenseQuery({
queryKey: userKeys.me(),
queryFn: () => API.userService.getMe(),
select: (data) => ({
Expand All @@ -17,21 +16,3 @@ export const useUserGetMe = () => {
});
return query;
};

export const useUserGetMeSkipRedirect = () => {
const { isAuthenticated } = useAuth();

const query = useQuery({
queryKey: userKeys.me(),
queryFn: () => API.userService.getMeSkipRedirect(),
select: (data) => ({
...data,
profileImage: data.profileImage ?? '',
profileMessage: data.profileMessage ?? '',
mbti: data.mbti ?? '',
}),
retry: false,
enabled: isAuthenticated,
});
return query;
};
4 changes: 2 additions & 2 deletions src/hooks/use-user/use-user-get/index.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { useQuery } from '@tanstack/react-query';
import { useSuspenseQuery } from '@tanstack/react-query';

import { API } from '@/api';
import { userKeys } from '@/lib/query-key/query-key-user';
import { GetUserPathParams } from '@/types/service/user';

export const useGetUser = ({ userId }: GetUserPathParams, options?: { enabled?: boolean }) => {
const query = useQuery({
const query = useSuspenseQuery({
queryKey: userKeys.item(userId),
queryFn: () => API.userService.getUser({ userId }),
...options,
Expand Down