feat(app): update dashboard layout and student learning error boundaries

- Update src/app/layout.tsx

- Update student/learning/study-path/error.tsx
This commit is contained in:
SpecialX
2026-07-04 10:23:43 +08:00
parent d2c250a1b3
commit 4b6cb5f11e
2 changed files with 8 additions and 4 deletions

View File

@@ -1,13 +1,12 @@
"use client"
import { RouteError } from "@/shared/components/route-error"
import { RouteErrorBoundary } from "@/shared/components/route-error"
export default function StudentStudyPathError({
error,
reset,
}: {
error: Error & { digest?: string }
reset: () => void
}) {
return <RouteError error={error} reset={reset} namespace="student" />
return <RouteErrorBoundary reset={reset} namespace="student" />
}

View File

@@ -7,6 +7,7 @@ import { ThemeProvider } from "@/shared/components/theme-provider";
import { Toaster } from "@/shared/components/ui/sonner";
import { NuqsAdapter } from "nuqs/adapters/next/app";
import { AuthSessionProvider } from "@/shared/components/auth-session-provider";
import { auth } from "@/auth";
import "./globals.css";
const inter = Inter({
@@ -46,6 +47,10 @@ export default async function RootLayout({
const locale = await getLocale();
const messages = await getMessages();
// v3: SSR 期间获取 session传给 AuthSessionProvider
// 避免 next-auth useSession 在 SSR/CSR 之间返回不同 status 导致 hydration mismatch。
const session = await auth();
return (
<html lang={locale} suppressHydrationWarning>
<body
@@ -59,7 +64,7 @@ export default async function RootLayout({
enableSystem
disableTransitionOnChange
>
<AuthSessionProvider>
<AuthSessionProvider session={session}>
<NuqsAdapter>{children}</NuqsAdapter>
</AuthSessionProvider>
<Toaster />