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:
@@ -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" />
|
||||
}
|
||||
|
||||
@@ -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 />
|
||||
|
||||
Reference in New Issue
Block a user