diff --git a/src/content/subject/DepartmentSelector.tsx b/src/content/subject/DepartmentSelector.tsx index 369b4d6..060a361 100644 --- a/src/content/subject/DepartmentSelector.tsx +++ b/src/content/subject/DepartmentSelector.tsx @@ -126,6 +126,7 @@ const DepartmentSelector: React.FC = () => { if (isInitialized || !groupedData || Object.keys(groupedData).length === 0) return; setIsInitialized(true); + let isDepartmentSelected = false; loadDataFromStorage('department', (data: string | null) => { if (!data) data = '교양필수'; Object.entries(groupedData).forEach(([university, faculties]) => { @@ -136,12 +137,15 @@ const DepartmentSelector: React.FC = () => { setSelectedUniversity(university); setSelectedFaculty(faculty); setSelectedTrack(dept.tnm); - return; + isDepartmentSelected = true; } }); }); }); }); + if (!isDepartmentSelected) { + setLoading(false); + } }, [groupedData, isInitialized]); // 학과 검색 결과 선택 핸들러 diff --git a/src/content/suganginwon/DepartmentSelector.tsx b/src/content/suganginwon/DepartmentSelector.tsx index 06b5589..bfcb869 100644 --- a/src/content/suganginwon/DepartmentSelector.tsx +++ b/src/content/suganginwon/DepartmentSelector.tsx @@ -65,6 +65,7 @@ const DepartmentSelector: React.FC = (groupedDataProp: GroupedD if (isInitialized || !groupedData || Object.keys(groupedData).length === 0) return; setIsInitialized(true); + let isDepartmentSelected = false; loadDataFromStorage('department', (data: string | null) => { if (!data) data = '교양필수'; Object.entries(groupedData).forEach(([university, faculties]) => { @@ -75,12 +76,15 @@ const DepartmentSelector: React.FC = (groupedDataProp: GroupedD setSelectedUniversity(university); setSelectedFaculty(faculty); setSelectedTrack(dept.tnm); - return; + isDepartmentSelected = true; } }); }); }); }); + if (!isDepartmentSelected) { + setLoading(false); + } }, [groupedData, isInitialized]); useEffect(() => {