我正在评估如何在SPA应用中以React和CMS为后台实现服务器端渲染。
这是我看到的方法 Next.js 建议有per-rendered和所有大多数CMS系统建议。
这种方式的缺点是,如果CMS的JSON数据很大,那么第一次请求就需要很长时间。
你有什么其他的解决方案?
Heyooo,这里是Contentful DevRel。👋🏻
你的担心是绝对有道理的。
这就是为什么Next.js最近加入了 使用getStaticProps进行高级静态预生成。. 我们的目标是通过尽可能多的预生成来解决动态响应时间长的问题。这样用户就有了一个快速的初始内容画像,但仍然可以享受React应用带来的所有动态优势(Next.js通常遵循同构JavaScript架构)。
你所描述的处理时间就从动态请求响应时间转移到了构建过程中。
一般来说,当你不处理数百万个页面时,我建议你尝试一下静态HTML。它使应用程序往往更快、更安全、更有保障。对于更完整和更大的网站,Vercel也在尝试混合解决方案,提供只预生成某些页面的方法。不过这都是很新的东西 :)