SSG和s-s-r如何选择?

Posted

技术标签:

【中文标题】SSG和s-s-r如何选择?【英文标题】:How to choose between SSG and s-s-r? 【发布时间】:2021-08-21 08:59:21 【问题描述】:

我目前正在探索 Nextjs 并使用相同的框架构建一个网站。该网站具有公共流程、受保护的路线(例如用户仪表板、用户项目详细信息和一般用户数据)和产品页面。

问题是,我如何在 SSG 和 s-s-r 之间选择特定路线。到目前为止,这是我的策略

    所有静态页面(表单、用户输入) - SSG BLOG 链接全部为 SSG

我的问题是:

    仪表板和用户详细信息页面不是实时数据,而是可能包含项目特定信息的数据。这是带有增量重新验证的用例 SSG 还是 s-s-r?

    公开可用的产品详细信息页面。可能有超过一千种产品。在这种情况下,预渲染产品页面的漫长构建过程是否超过了潜在的 seo 好处?因为这似乎是 SSG 重新验证的理想案例。 还是最适合 s-s-r?

提前致谢!

【问题讨论】:

【参考方案1】:

很明显,您知道两个/三个选项之间的区别。

    SSG - 使用客户端查询进行水合。 SSG - 可能拥有数千种产品

过早的扩展从来都不是一个好主意,而且你很少会为这两种情况找到一个好的解决方案。 SSG 现在可能会更好,但您可以使用 ISR - 但是,请选择解决当今问题的解决方案。

拥有 1,000 个页面的静态网站可以在大约 2 分钟内完成 lint 和构建。当您知道自己的瓶颈时,使用 SSG 并使用不同的解决方案通常更具成本效益(时间、精力和托管成本)。

【讨论】:

以上是关于SSG和s-s-r如何选择?的主要内容,如果未能解决你的问题,请参考以下文章

NextJS 静态 SSG 认证

我应该使用哪一个:s-s-r、仅 SPA 或 SSG 用于我的 Nuxt 项目?

电容器中的 NextJS s-s-r

作为道具传递与提取缓存 Apollo 客户端 Nextjs

如何将 Firebase Firestore 数据添加到 s-s-r Nuxt Apps Vuex Store

(ssg-wsg) 如何在 SSG-WSG API 中使用 PHP 中的初始化向量进行 AES 加密