diff --git a/src/components/modal/dateCourseSearchFilterModal.tsx b/src/components/modal/dateCourseSearchFilterModal.tsx
index 4ccd896..c8b97ea 100644
--- a/src/components/modal/dateCourseSearchFilterModal.tsx
+++ b/src/components/modal/dateCourseSearchFilterModal.tsx
@@ -1,6 +1,6 @@
-// DateCourseSearchFilterModal.tsx
import { useMemo } from 'react';
-import { useLocation } from 'react-router-dom';
+import { Navigate, useLocation } from 'react-router-dom';
+import ClipLoader from 'react-spinners/ClipLoader';
import { DateCourseQuestion } from '@/constants/dateCourseQuestion';
@@ -80,12 +80,12 @@ export default function DateCourseSearchFilterModal({ onClose }: TProps) {
transportation,
userPreferredKeywords,
size: 5,
- page: 1,
+ page: 0,
isBookmarked,
};
- const { data: courseData } = useGetCourse(commonParams);
- const { data: bookmarkedData } = useGetBookmarkedCourse(commonParams);
+ const { data: courseData, isLoading: courseDataLoading, error: courseDataError } = useGetCourse(commonParams);
+ const { data: bookmarkedData, isLoading: bookmarkDataLoading, error: bookmarkDataError } = useGetBookmarkedCourse(commonParams);
const data = isBookmarked ? bookmarkedData : courseData;
@@ -162,6 +162,10 @@ export default function DateCourseSearchFilterModal({ onClose }: TProps) {
}
};
+ if (bookmarkDataError || courseDataError) {
+ return ;
+ }
+
return (
@@ -180,9 +184,13 @@ export default function DateCourseSearchFilterModal({ onClose }: TProps) {
))}
-
+ {bookmarkDataLoading || courseDataLoading ? (
+
+ ) : (
+
+ )}
diff --git a/src/pages/dateCourse/CoursePage.tsx b/src/pages/dateCourse/CoursePage.tsx
index eab7b5b..32837a8 100644
--- a/src/pages/dateCourse/CoursePage.tsx
+++ b/src/pages/dateCourse/CoursePage.tsx
@@ -1,5 +1,6 @@
import { useState } from 'react';
-import { useNavigate } from 'react-router-dom';
+import { Navigate, useNavigate } from 'react-router-dom';
+import ClipLoader from 'react-spinners/ClipLoader';
import useGetBookmarkedCourse from '@/hooks/course/useGetBookmarkedCourse';
import { useUserGrade } from '@/hooks/home/useUserGrade';
@@ -15,11 +16,11 @@ import useModalStore from '@/store/useModalStore';
export default function Course() {
const navigate = useNavigate();
const { openModal } = useModalStore();
- const [current, setCurrent] = useState(1);
+ const [current, setCurrent] = useState(0);
const { budget, datePlaces, dateDurationTime, startTime, mealTypes, transportation, userPreferredKeywords } = useFilterStore();
- // 수정 예정
- const { data } = useGetBookmarkedCourse({
+
+ const { data, isLoading, error } = useGetBookmarkedCourse({
page: current,
size: 5,
budget,
@@ -31,7 +32,13 @@ export default function Course() {
startTime,
isBookmarked: true,
});
+
const { data: gradeData } = useUserGrade();
+
+ if (error) {
+ return ;
+ }
+
return (
@@ -64,12 +71,20 @@ export default function Course() {
-
- {data?.result.dateCourseList.map((course, idx) => {
- return ;
- })}
-
-
+ {isLoading ? (
+
+
+
+ ) : (
+ <>
+
+ {data?.result.dateCourseList.map((course, idx) => {
+ return ;
+ })}
+
+
+ >
+ )}
diff --git a/src/pages/dateCourse/FindDateCourse.tsx b/src/pages/dateCourse/FindDateCourse.tsx
index 6ae4177..64d7c7b 100644
--- a/src/pages/dateCourse/FindDateCourse.tsx
+++ b/src/pages/dateCourse/FindDateCourse.tsx
@@ -1,5 +1,6 @@
import { useEffect, useState } from 'react';
-import { useNavigate } from 'react-router-dom';
+import { Navigate, useNavigate } from 'react-router-dom';
+import ClipLoader from 'react-spinners/ClipLoader';
import useGetCourse from '@/hooks/course/useGetCourse';
@@ -14,14 +15,14 @@ import useModalStore from '@/store/useModalStore';
function FindDateCourse() {
const { openModal } = useModalStore();
- const [current, setCurrent] = useState(1);
+ const [current, setCurrent] = useState(0);
const navigate = useNavigate();
const { budget, datePlaces, dateDurationTime, startTime, mealTypes, transportation, userPreferredKeywords } = useFilterStore();
useEffect(() => {
setCurrent(1);
}, [budget, datePlaces, dateDurationTime, startTime, mealTypes, transportation, userPreferredKeywords]);
- const { data: courseData } = useGetCourse({
+ const { data, isLoading, error } = useGetCourse({
page: current,
size: 5,
budget,
@@ -34,6 +35,10 @@ function FindDateCourse() {
isBookmarked: false,
});
+ if (error) {
+ return ;
+ }
+
return (
@@ -51,12 +56,20 @@ function FindDateCourse() {
검색 필터
-
- {courseData?.result.dateCourseList.map((course) => {
- return ;
- })}
-
-
+ {isLoading ? (
+
+
+
+ ) : (
+ <>
+
+ {data?.result?.dateCourseList.map((course, idx) => {
+ return ;
+ })}
+
+
+ >
+ )}