/** * Dashboard 佈局 */ 'use client' import { useSession } from 'next-auth/react' import { useRouter } from 'next/navigation' import { useEffect } from 'react' import { Sidebar } from '@/components/layout/sidebar' import { Breadcrumb } from '@/components/layout/breadcrumb' export default function DashboardLayout({ children }: { children: React.ReactNode }) { const { data: session, status } = useSession() const router = useRouter() useEffect(() => { console.log('[Dashboard] ========== Dashboard Auth Check ==========') console.log('[Dashboard] Status:', status) console.log('[Dashboard] Has session:', !!session) console.log('[Dashboard] Has user:', !!session?.user) console.log('[Dashboard] User email:', session?.user?.email) console.log('[Dashboard] ===========================================') // 完全移除重定向邏輯,讓 session 自然載入 // NextAuth 會自動處理 session 同步 }, [status, session]) // 載入中時顯示 loading if (status === 'loading') { return (

正在載入 Session...

Status: {status}

) } // 如果沒有 session,顯示登入提示 (不要自動重定向) if (!session || !session.user) { return (

需要登入

您尚未登入或 Session 已過期

Status: {status}

) } return (
{/* Sidebar */} {/* Main Content */}
{children}
) }