• 渲染
      • 把数据和模板拼接到一起
    • 传统的服务端渲染
      • 早起的web页面在服务端渲染
      • 前后端耦合度高
      • 服务端压力大
      • 用户体验一般
        • 需要刷新整个页面
      • 前端没有足够发挥空间
    • csr
      • 客服端渲染
      • 首屏渲染慢
        • 请求多
          • 1.先请求空白页面
          • 2.js请求
          • 3.数据请求
      • 不利于SEO
        • seo:搜索引擎中的排名
        • 获取到的是空html,无法获取页面内容
    • 同构渲染
      • 后端渲染 + 前端渲染
      • 两种渲染方式的优点
        • 基于Vue,React等框架
          • 在服务端之执行一次,实现服务端渲染(首屏直出)
          • 在客户端再执行一次,用于接管页面交互
        • 核心解决SEO和首屏渲染慢的问题
        • 官方解决方案 比较麻烦
        • 第三方解决方案
          • React Next.js
          • Vue Nuxt.js
    • Nuxt
      • 根据pages自动生成路由
      • 解决了SEO和首屏渲染慢 其余在客户端进行渲染
      • 同构渲染的SPA应用
        • 依然是SPA应用,之后的交互都是客户端渲染
      • 应用的问题
        • 开发条件所限
          • 浏览器特定的代码只能在某些生命周期钩子函数中使用
          • 一些外部的扩展库可能需要特殊处理才能在服务端渲染中运行
          • 不能在服务端渲染期间操作DOM
          • 某些代码需要区分操作环境
        • 构建和部署的要求更多
          • 同构渲染
            • 需要构建两个端
            • 只能部署在Nodejs server
          • 客户端
            • 只需要构建客户端
            • 可以部署在任意Web服务器中
        • 更多的服务端负载
          • 在node中占用大量的cpu资源
          • 高流量环境下使用,准备相应的服务器负载
          • 更多的服务端渲染优化工作
    • 使用之前考虑
      • 1.是否需要SEO?
      • 2,,首屏速度是否真的重要