javascript - 同构反应与盖茨比(静态站点)反应
问题描述
使用同构(服务器端)反应与使用静态生成的反应应用程序(例如 gatsby)有什么关键区别或好处吗?
我了解,两者都会生成 html 以发送到浏览器以进行初始页面加载,因此它们都具有 SEO 优化。两者都可以与经过身份验证的路由和非静态内容一起使用。我知道它们不是一回事,但有什么区别,更重要的是为什么有人会使用其中一个。
提前致谢。
解决方案
有一些差异。
- 顾名思义,同构渲染需要后端服务器;预渲染不需要后端服务器。
- 使用 SSR,页面和元数据将包含用户特定的数据;预渲染将不包括初始页面加载时特定于用户的数据。
- 预渲染需要提供多个 .html 文件,并且代理必须重定向到这些文件;同构渲染仍然是一个 SPA。
在什么条件下一个人会比另一个人更受青睐?
理想情况下,当页面加载时,用户特定的数据会被切断 (Iso) 内容变化不大且不是用户特定的 (Pre)
指出的差异是关键差异。在不同的方法中有不同的技术。
另外,同构渲染结合了 SSR 和 CSR。同构渲染在浏览器中进行动态路由。仅 SSR 解决方案在每条新路线上提供新页面。
两个好资源:
https://www.toptal.com/front-end/client-side-vs-server-side-pre-rendering
推荐阅读
- kubernetes - Kubernetes 持久卷数据在多个 pod 删除后损坏
- html - 响应式马赛克图像作为 CSS/HTML 中的背景 - 需要边框和捕获文本
- c# - 使用 LINQ 查询 EF Core 中的复杂数据类型
- listview - Xamarin Froms:标签文本和图像在单击 Listview 的视单元内的标签时未在 UI 上更新
- docker - 在 Travis CI for Cypress 中构建镜像的 Docker-compose 缓存
- git - Visual Studio 未知错误的扩展 - 无法推送或获取任何内容
- html - 替代用于在自定义形状周围显示阴影的阴影过滤器
- php - 使用 Office 365 Codeigniter 发送邮件
- php - 使用 PHP 将 JSON 数据保存到 MySQL
- c# - BLE 不会在 Xamarin 中扫描