nextjs 开启CSG渲染模式
1. 官网给到的一部分加载模式:
import dynamic from 'next/dynamic' import { Suspense } from 'react' const DynamicHeader = dynamic(() => import('../components/header'), { suspense: true, }) export default function Home() { return ( <Suspense fallback={`Loading...`}> <DynamicHeader /> </Suspense> ) }
2. 单个页面启用CSG(客户端渲染)
import dynamic from 'next/dynamic' import React from 'react' const NoSsr = props => ( <React.Fragment>{props.children}</React.Fragment> ) export default dynamic(() => Promise.resolve(NoSsr), { ssr: false })
3. 同理,整个应用启用CSG:在_app.tsx写入dynamic加载方式
import type { AppProps } from "next/app";
import dynamic from "next/dynamic";
import React from "react";
const App = ({ Component, pageProps }: AppProps) => {
return <Component {...pageProps} />;
};
export default dynamic(() => Promise.resolve(App), {
ssr: false,
});

浙公网安备 33010602011771号