@@ -9,6 +9,7 @@ import DashboardAddButton from "@/components/button/DashboardAddButton";
99import { getDashboards } from "@/api/dashboards" ;
1010import { useRouter } from "next/router" ;
1111import { useAuthGuard } from "@/hooks/useAuthGuard" ;
12+ import LoadingSpinner from "@/components/common/LoadingSpinner" ;
1213
1314interface Dashboard {
1415 id : number ;
@@ -29,21 +30,6 @@ export default function MyDashboardPage() {
2930 const [ isModalOpen , setIsModalOpen ] = useState ( false ) ;
3031 const itemsPerPage = 6 ;
3132
32- useEffect ( ( ) => {
33- if ( isInitialized && user ) {
34- fetchDashboards ( ) ;
35- }
36- } , [ isInitialized , user ] ) ;
37-
38- // 로그인 여부 파악 전 렌더링 X, 로딩 중 표시
39- if ( ! isInitialized ) {
40- return (
41- < div className = "flex justify-center items-center h-screen" >
42- 로딩 중...
43- </ div >
44- ) ;
45- }
46-
4733 const totalPages = Math . ceil ( ( dashboardList . length + 1 ) / itemsPerPage ) ;
4834 const startIndex = ( currentPage - 1 ) * itemsPerPage ;
4935
@@ -69,6 +55,12 @@ export default function MyDashboardPage() {
6955 }
7056 } ;
7157
58+ useEffect ( ( ) => {
59+ if ( isInitialized && user ) {
60+ fetchDashboards ( ) ;
61+ }
62+ } , [ isInitialized , user ] ) ;
63+
7264 const handlePrevPage = ( ) => {
7365 if ( currentPage > 1 ) setCurrentPage ( ( prev ) => prev - 1 ) ;
7466 } ;
@@ -77,6 +69,10 @@ export default function MyDashboardPage() {
7769 if ( currentPage < totalPages ) setCurrentPage ( ( prev ) => prev + 1 ) ;
7870 } ;
7971
72+ if ( ! isInitialized || ! user ) {
73+ return < LoadingSpinner /> ;
74+ }
75+
8076 return (
8177 < div className = "flex h-screen overflow-hidden" >
8278 < SideMenu teamId = { teamId } dashboardList = { dashboardList } />
0 commit comments