唯一的例外是 Ahrefs。Ahrefs自 2017 年以来一直在网络上渲染 JavaScript ,目前每天渲染超过 2 亿个页面。 这个未知的介绍为选择服务器端渲染解决方案提供了一个很好的案例,以确保所有爬虫都能看到您网站的内容。 此外,在服务器上呈现内容 还有另一个重要的好处:加载时间。 加载时间 JavaScript 渲染是 CPU 密集型的。这使得像 React 这样的大型库加载速度更慢,并且对用户来说更具交互性。总的来说, 我们发现 SPA的核心网络生命力(例如时间互动 (TTI))要高得多,尤其是在移动设备上,这是用户消费网络内容的主要方式。 使用客户端渲染的 React 应用程序示例。 然而,在浏览器初始渲染之后,由于以下原因,后续加载时间往往会更快: 客户端渲染不会更新整个页面。这意味着该库只需要加载一次。 React 的“diffing”算法仅更改状态已更改的 DOM 中的 HTML。结果,浏览器仅重新呈现已更改的内容。 根据每次访问浏览的页面数量,现场数据总体上可能是积极的。 然而,如果每次站点访问仅查看少量页面,则很难获得所有核心网络生命力的积极现场数据。
解决方案 最好的选择是选择
SSR或SSG,主要有以下原因: 更快的初始渲染。 无需依赖搜索引擎爬虫来呈现您的内容。 TTI 的改进是由于浏览器在交互之前解析和呈现的 JavaScript 代码减少了。 通过ReactDOMServer可以在 React 中实现 SSR 。但是,我们建议使用名为Next.js的 React 框 日本 WhatsApp 号码列表 架及其 SSG 和SSR 选项。您还可以使用 Next.js 实现 CSR,但该框架将用户引导至 SSR/SSG 以提高速度。 Next.js支持所谓的“自动静态优化”。实际上,这意味着您的网站上可以有一些页面使用 SSR(例如您的帐户页面),而其他页面则使用 SSG(例如您的博客)。 结果:SSG 和快速 TTFB 用于非动态页面,SSR 作为动态内容的备用渲染策略。 边注。您可能听说过使用ReactDOM.quantity()进行React Hydration 。在这里,内容通过 SSG/SSR 传递,并变成在第一次渲染期间在客户端渲染的应用程序。对于未来的动态应用程序来说,这可能会成为 SSR 的自然选择。然而,Hydration 目前的工作原理是加载整个 React 库并附加更改为 HTML 的事件处理程序。React 使 HTML 在浏览器和服务器之间保持同步。
目前不建议采用这种方法
这是因为它仍然对 Web 关键因素(例如初始渲染 TTI)产生负面影响。 部分水合将来可能会通过仅水合页面的重要部分(例如浏览器视口中的部分)而不是整个页面来解决此问题。在那之前,SSR/SSG 是更好的选择。 既然我们谈论的是速度,如果我们 瑞士 电话号码列表 不提及其他方法,我们就会造成伤害。Next.js通过以下功能优化React 应用程序中的关键渲染路径: 图像优化– 这添加了<img> 属性以及 用于宽度和高度 、延迟加载和图像大小调整的srcset 。 字体优化 – 这会内联重要的字体 CSS 并添加字体显示控件。 脚本优化 – 这允许您选择何时加载脚本。在页面变为交互式之前或之后。 动态导入–如果您已经实现了代码分割 最佳实践,则此功能可以在需要时轻松导入 JS 代码,而不是在初始渲染时加载它并减慢速度。Masu。 速度和积极的核心网络生命力虽然次要,但却是排名因素。Next.js 功能让您可以轻松创建出色的 Web 体验,为您带来竞争优势。