reactjs 如何禁用Nextjs预呈现页面?

mwg9r5ms  于 2022-11-29  发布在  React
关注(0)|答案(1)|浏览(104)

如何才能真正CSR(客户端渲染)NextJs应用程序中的某些页面?
该文档指出,如果页面中存在getServerSidePropsgetStaticSiteProps,则会分别根据请求或在构建时在服务器上预呈现该页面。
同样,随着automatic static optimisation的出现,NextJs会自动确定是否在没有getServerSidePropsgetInitialProps的情况下静态地预呈现--如果我现在理解这句话,它意味着 * 所有不导出上述服务器端函数的页面都将在服务器上静态生成 *
因此,我现在的问题是,如何真正在客户端只呈现像dashboard这样的页面,而不使nextjs由于自动静态优化而自动预呈现?

nfeuvbwi

nfeuvbwi1#

您可以在导出特定元件时禁用该元件的SSR。

const NoSSRYourComponent = () => {
    return (
        // ... NoSSRYourComponent code
    )
}

// export it with SSR disabled
const YourComponent = dynamic(() => Promise.resolve(NoSSRYourComponent), {
  ssr: false,
})

export default YourComponent

相关问题