Next.js 使用+;150k静态页面?

Next.js 使用+;150k静态页面?,next.js,static-site-generation,Next.js,Static Site Generation,我有一个MERN应用程序,其中集成了NextJS。第一次使用NextJS,请容忍我。我最初在任何地方都使用了SSR(getServerSideProps) 要点: 我有超过150000页的静态内容,它永远不会改变 每周我都会添加大约+100个新页面 我想这里的理想情况是使用getStaticProps和getstaticpath,在最初构建了15万页之后,每周只构建新添加的页面,并保持我已经构建的页面不变,因为它永远不会改变 我怎样才能做到这一点?我应该在这里使用revalidate?我一直

我有一个MERN应用程序,其中集成了NextJS。第一次使用NextJS,请容忍我。我最初在任何地方都使用了SSR(
getServerSideProps

要点:

  • 我有超过150000页的静态内容,它永远不会改变
  • 每周我都会添加大约+100个新页面
我想这里的理想情况是使用
getStaticProps
getstaticpath
,在最初构建了15万页之后,每周只构建新添加的页面,并保持我已经构建的页面不变,因为它永远不会改变


我怎样才能做到这一点?我应该在这里使用
revalidate
?我一直在文档中阅读,但我不完全理解它。

您可以使用
getStaticProps
/
getstaticpath
实现这一点

revalidate
用于
getStaticProps
for-在需要更新现有生成页面的情况下。在您的情况下,这不是您想要的,因为您提到生成的页面将永远不会更改

要实现您想要的,并允许生成新页面,您可以在
getstaticpath
中使用

使用
fallback:true
时,在构建时未生成的路径将在第一个请求上作为回退页面,而Next.js静态生成页面。完成此操作后,页面将从回退页面切换到实际的完整页面

使用
fallback:blocking
,构建时未生成的路径将等待Next.js生成HTML,然后在完成后为页面提供服务。与
fallback:true
不同,由于没有回退,因此在生成页面之前,渲染将被阻止

在这两种情况下,页面都会添加到预呈现页面的列表中。对同一路径的后续请求将服务于预生成的页面


请注意,
下一次导出
不支持这两个选项,以防您依赖它。

谢谢!我用重新验证数据误导了退路。我将仅在列出这些150k静态页面的页面中使用getStaticProps+revalidate,因为列表每周都会更改。