Добавлена динамическая загрузка компонента Sidebar в AppShell
- Реализована динамическая загрузка сайдбара с отключением SSR для предотвращения гидратационных расхождений - Обновлен импорт компонента Sidebar для улучшения производительности и совместимости с клиентским рендерингом
This commit is contained in:
@ -1,11 +1,16 @@
|
|||||||
'use client'
|
'use client'
|
||||||
|
|
||||||
|
import dynamic from 'next/dynamic'
|
||||||
import { usePathname } from 'next/navigation'
|
import { usePathname } from 'next/navigation'
|
||||||
import { useEffect, useState } from 'react'
|
import { useEffect, useState } from 'react'
|
||||||
|
|
||||||
import { Sidebar } from '@/components/dashboard/sidebar'
|
|
||||||
import { useAuth } from '@/hooks/useAuth'
|
import { useAuth } from '@/hooks/useAuth'
|
||||||
|
|
||||||
|
// Рендерим сайдбар только на клиенте, отключаем SSR, чтобы избежать гидратационных расхождений
|
||||||
|
const Sidebar = dynamic(() => import('@/components/dashboard/sidebar').then((m) => m.Sidebar), {
|
||||||
|
ssr: false,
|
||||||
|
})
|
||||||
|
|
||||||
export function AppShell({ children }: { children: React.ReactNode }) {
|
export function AppShell({ children }: { children: React.ReactNode }) {
|
||||||
const pathname = usePathname()
|
const pathname = usePathname()
|
||||||
const { isAuthenticated, isLoading } = useAuth()
|
const { isAuthenticated, isLoading } = useAuth()
|
||||||
|
Reference in New Issue
Block a user