DynamicAppWrapper included
This commit is contained in:
parent
e3aed97b22
commit
f7d4ae4741
@ -1,22 +0,0 @@
|
||||
'use client';
|
||||
|
||||
import dynamic from 'next/dynamic';
|
||||
import { Center, Spinner } from '@chakra-ui/react';
|
||||
import ClientOnly from './ClientOnly';
|
||||
|
||||
const MainApp = dynamic(() => import('./MainApp'), {
|
||||
ssr: false,
|
||||
loading: () => (
|
||||
<Center h="100vh">
|
||||
<Spinner size="xl" />
|
||||
</Center>
|
||||
),
|
||||
});
|
||||
|
||||
export default function DynamicMainApp() {
|
||||
return (
|
||||
<ClientOnly>
|
||||
<MainApp />
|
||||
</ClientOnly>
|
||||
);
|
||||
}
|
31
app/components/MainAppWrapper.tsx
Normal file
31
app/components/MainAppWrapper.tsx
Normal file
@ -0,0 +1,31 @@
|
||||
'use client';
|
||||
|
||||
import { useEffect, useState } from 'react';
|
||||
import dynamic from 'next/dynamic';
|
||||
import { Center, Spinner } from '@chakra-ui/react';
|
||||
|
||||
const MainApp = dynamic(() => import('./MainApp'), {
|
||||
loading: () => (
|
||||
<Center h="100vh">
|
||||
<Spinner size="xl" />
|
||||
</Center>
|
||||
),
|
||||
});
|
||||
|
||||
export default function MainAppWrapper() {
|
||||
const [isMounted, setIsMounted] = useState(false);
|
||||
|
||||
useEffect(() => {
|
||||
setIsMounted(true);
|
||||
}, []);
|
||||
|
||||
if (!isMounted) {
|
||||
return (
|
||||
<Center h="100vh">
|
||||
<Spinner size="xl" />
|
||||
</Center>
|
||||
);
|
||||
}
|
||||
|
||||
return <MainApp />;
|
||||
}
|
16
app/page.tsx
16
app/page.tsx
@ -1,5 +1,17 @@
|
||||
import DynamicMainApp from './components/DynamicMainApp';
|
||||
import { Suspense } from 'react';
|
||||
import { Center, Spinner } from '@chakra-ui/react';
|
||||
import MainAppWrapper from './components/MainAppWrapper';
|
||||
|
||||
export default function Home() {
|
||||
return <DynamicMainApp />;
|
||||
return (
|
||||
<Suspense
|
||||
fallback={
|
||||
<Center h="100vh">
|
||||
<Spinner size="xl" />
|
||||
</Center>
|
||||
}
|
||||
>
|
||||
<MainAppWrapper />
|
||||
</Suspense>
|
||||
);
|
||||
}
|
Loading…
Reference in New Issue
Block a user