【问题标题】:Isomorphic React vs Gatsby (Static Site) React同构反应与盖茨比(静态站点)反应
【发布时间】:2019-08-15 00:16:42
【问题描述】:

使用同构(服务器端)react 与使用静态生成的 react 应用程序(例如 gatsby)是否有任何主要区别或好处?

我了解,两者都会生成 html 以发送到浏览器以进行初始页面加载,因此它们都具有 SEO 优化。两者都可以与经过身份验证的路由和非静态内容一起使用。我知道它们不是一回事,但有什么区别,更重要的是为什么有人会使用一个而不是另一个。

提前致谢。

【问题讨论】:

    标签: javascript reactjs server-side-rendering gatsby isomorphic-javascript


    【解决方案1】:

    有一些不同。

    1. 顾名思义,同构渲染需要后端服务器;预渲染不需要后端服务器。
    2. 使用 SSR,页面和元数据将包含用户特定的数据;预呈现将不包括初始页面加载时的用户特定数据。
    3. 预渲染需要提供多个 .html 文件,并且代理必须重定向到这些文件;同构渲染仍然是一个 SPA。

    在什么条件下一个人会比另一个人更受青睐?

    理想情况下,在页面加载时会切断用户特定数据的位置 (Iso) 内容变化不大且不是用户特定的(Pre)

    指出的差异是关键差异。不同方法中的技术有所不同。

    除此之外,同构渲染结合了 SSR 和 CSR。同构渲染在浏览器中进行动态路由。仅限 SSR 的解决方案会在每条新路线上提供新页面。

    两个很好的资源:

    https://www.toptal.com/front-end/client-side-vs-server-side-pre-rendering

    https://jamstack.org

    【讨论】:

    • 老兄。想象一下,我用 gatsby 做了一个网页,在一个页面上我将添加一个动态组件,这意味着在用户点击时它会显示一个随机的好词组。使用 React 很容易,使用 SSR 也很容易,因为 React 在用户交互时接管了网站。盖茨比呢?盖茨比如何处理这种互动?
    • @roll,我也有同样的问题。我在Gatsby docs 中找到了答案:1)静态站点 HTML 在构建时生成,2)即使 HTML 是静态的,也包含一些 JS 可以从静态重建 React 应用程序客户端HTML('rehydration'),3)在这个'rehydration'阶段之后,React 应用程序将像普通的 SPA 一样运行。您可以将其用于动态客户端行为,例如随机短语、数据获取、身份验证等。
    猜你喜欢
    • 2021-01-14
    • 1970-01-01
    • 1970-01-01
    • 2021-03-14
    • 2022-01-25
    • 2021-01-22
    • 2022-01-23
    • 2021-06-15
    • 2020-03-16
    相关资源
    最近更新 更多