如何在 nextjs 的预渲染静态生成页面中获取更改的数据

How to fetch changed data in pre-rendered static generated page in nextjs

如果我使用nextjs pre render static generation page,那么以后更改的数据怎么办? 假设我使用电子商务产品详细信息页面或假设我将此静态生成用于博客文章。如果明天产品价格将更改或博客文章将被编辑,那么如何获取此更新数据。我应该在服务器中重新构建项目吗?

浏览 nextjs 文档我发现有一些可用的渲染类型 -

  1. 预渲染静态生成
    1. 没有外部数据的静态生成
    2. 使用外部数据静态生成。这里一些外部 api 在构建时用于获取数据
  2. 服务器端渲染。

在我上面的问题中,我谈到了第1.2点中提到的方式,我问如果构建后数据会改变,那么如何获取它。

是否可以在不在服务器中重新构建应用程序的情况下获取更新的数据?

我不敢使用第2点,因为它可能会更慢。我认为我目前的纯 React 应用程序比这种方式更快。

如果您的应用程序具有不断变化/动态的数据,我建议您使用 CSR(客户端呈现)。查看 useSWR。

对于您的用例,如果您真的想利用 Next.js 的强大功能,您可以选择 SSG(预呈现)您的产品列表页面,然后选择 CSR 或 SSR 您的产品详细信息页面。

未来的增量构建应该可以解决这个问题。