什么是 CSR、SSR、SSG、ISR - 渲染模式详解

什么是 CSR、SSR、SSG、ISR - 渲染模式详解
最新回答
八月的雨季

2022-07-26 19:47:23

CSR是常见SPA所使用的渲染方式,适用于客户端页面有动态需求或需要交互的场景。SSR是从服务端直接返回要渲染的静态内容,适用于静态内容较多的场景。SSG在构建阶段准备页面所需数据,构建静态页面并在请求时返回。ISR是SSG的一种增强版,适用于需要频繁更新的页面。以下是详细介绍:

1. CSR

  • 定义:CSR是在用户浏览器中完成页面的渲染。页面初次加载时,服务器会发送一个基础的HTML文件,以及JavaScript文件。JavaScript文件会在客户端执行,并根据需要动态地更新页面内容。
  • 适用场景:适用于客户端页面有较多动态需求或需要丰富交互的场景,如单页应用。

2. SSR

  • 定义:SSR是在服务器端完成页面的渲染,然后将渲染好的HTML发送给客户端。客户端接收到HTML后,可以直接展示页面内容,而无需再执行JavaScript进行渲染。
  • 适用场景:适用于静态内容较多的场景,如CMS生成内容、博客站点等。这些场景通常对SEO有较高要求,因为搜索引擎爬虫可以更容易地抓取到服务端渲染好的HTML内容。

3. SSG

  • 定义:SSG是在构建阶段准备页面所需数据,并生成静态页面。这些静态页面在请求时直接返回给客户端,无需再进行渲染。
  • 适用场景:常用于静态内容较多的场景,如企业官网、个人博客等。这些场景通常对页面加载速度和SEO有较高要求。

4. ISR

  • 定义:ISR是SSG的一种增强版。在收到页面请求时,服务端会判断页面的时效性。如果页面已经失效,则进行增量构建并生成新的静态页面。
  • 适用场景:适用于需要频繁更新的页面,如天气预报、新闻页面等。这些场景需要在保证页面加载速度的同时,确保数据的实时性。

选择渲染模式时,应考虑应用的动态需求、交互性以及服务端支持情况。同时,渲染模式并非固定不变,可以根据具体场景进行优化和调整。