美文网首页
服务端渲染

服务端渲染

作者: 欢欣的膜笛 | 来源:发表于2020-03-31 22:15 被阅读0次

SSR:服务端渲染

  • 原理:
    将同⼀个组件渲染为服务器端的HTML字符串,将它们直接发送到浏览器,最后将这些静态标记"激活"为客户端上完全可交互的应⽤程序。
  • 应⽤场景:
    1. 应⽤需要更好的SEO
    2. 应⽤需要更快的内容到达时间 (⾸屏渲染时间),特别是对于缓慢的⽹络情况或运⾏缓慢的设备。
  • 局限:
    1. 更⼤的服务器端负载
    2. 较⾼的学习成本
    3. ⼀些外部扩展库使⽤会受限

Nuxt.jsNuxt.js是一个基于Vue.js的通用应用框架。

  • 特性

    1. 基于 Vue.js
    2. 自动代码分层
    3. 服务端渲染
    4. 强大的路由功能,支持异步数据
    5. 静态文件服务
    6. ES2015+语法支持
    7. 打包和压缩 JSCSS
    8. HTML头部标签管理
    9. 本地开发支持热加载
    10. 集成ESLint
    11. 支持各种样式预处理器SASS、LESS、Stylus等等
    12. 支持HTTP/2推送
  • 安装:

     npm install -g npx
     npm install -g create-nuxt-app
     npx create-nuxt-app  <项目名>
     // choose Koa、axio、Universal (SSR)
    
  • 启动:npm run dev

  • ⽬录结构

    1. assets:资源目录,用于组织未编译的静态资源如 LESSSASSJavaScript
    2. components:组件目录,用于组织应用的Vue.js组件。Nuxt.js不会扩展增强该目录下Vue.js组件,即这些组件不会像页面组件那样有asyncData方法的特性。
    3. layouts:布局目录,用于组织应用的布局组件。若无额外配置,该目录不能被重命名。
    4. middleware:⽤于存放应⽤的中间件。
    5. pages:⻚⾯⽬录,⽤于组织应⽤的路由及视图。
    6. plugins:插件目录,用于组织那些需要在根vue.js应用实例化之前需要运行的Javascript插件。
    7. static:静态文件目录,用于存放应用的静态文件,此类文件不会被Nuxt.js调用Webpack进行构建编译处理。服务器启动的时候,该目录下的文件会映射至应用的根路径/下。若无额外配置,该目录不能被重命名。
    8. store:用于组织应用的Vuex状态树文件。Nuxt.js框架集成了Vuex状态树的相关功能配置,在store目录下创建一个index.js文件可激活这些配置。若无额外配置,该目录不能被重命名。
    9. nuxt.config.js 文件:用于组织Nuxt.js应用的个性化配置,以便覆盖默认配置。若无额外配置,该文件不能被重命名。
  • 路由:
    Nuxt.js依据pages目录结构自动生成vue-router模块的路由配置。页面之间使用路由,用<nuxt-link>标签。

     <template>
       <nuxt-link to="/">首页</nuxt-link>
     </template>
    
  • 嵌套:嵌套:制造⼀个.vue⽂件和⽂件夹同名

  • 动态路由:⽂件名或者⽂件夹名称要带_
    以下目录结构:

    pages/
    --| _slug/
    -----| comments.vue
    -----| index.vue
    --| user/
    -----| _id.vue
    -----| index.vue
    --| product/
    -----| _id.vue
    --| index.vue
    

    Nuxt.js生成对应的路由配置表为:

    routes: [{
      path: "/user",
      component: _c49ccf6e,
      children: [{
        path: "",
        component: _9cd9f7e8,
        name: "user"
      }, {
        path: ":id",
        component: _51ea9974,
        name: "user-id"
      }]
    }, {
      path: "/product/:id?",
      component: _63b48c0c,
      name: "product-id"
    }, {
      path: "/",
      component: _52799078,
      name: "index"
    }, {
      path: "/:slug",
      component: _76154fff,
      name: "slug"
    }, {
      path: "/:slug/comments",
      component: _cc523652,
      name: "slug-comments"
    }]
    

相关文章

  • 服务端渲染SSR之UmiJS预渲染

    UmiJS 服务端渲染 本文主要介绍 UmiJS 的预渲染功能。 一、什么是服务端渲染? 服务端渲染(Server...

  • SSR服务端同构渲染

    页面渲染历史 服务端框架模板渲染 -> 客户端渲染 -> 服务端同构渲染(Server Side Render) ...

  • 服务端渲染(SSR)

    导读 本文主要是从三个方面学习服务端渲染,内容整理自多个博客。 服务端渲染是什么?什么是服务端渲染?(服务端渲染的...

  • 服务端渲染与客户端渲染

    服务端渲染与客户端渲染 服务端渲染说白了,就是在服务端使用模板引擎末班引擎最早诞生于服务端,后来才到了前端 服务端...

  • Vue SSR 服务端渲染

    服务端渲染的基本模型 所谓服务端渲染, 其实一直都有, java, python, php 都有渲染模板来做服务端...

  • 服务端渲染介绍

    什么是渲染 渲染指的是把数据+模板拼接到一起 传统服务端渲染 早期Web页面都是通过服务端渲染,服务端将数据和页面...

  • SSR服务端渲染-简析

    什么是服务端渲染 (SSR)? 服务端渲染简单来讲就是,服务端渲染好html字符串直接返回给前端浏览器展示,可以先...

  • vue服务端渲染缓存应用详解

    服务端渲染简介 服务端渲染不是一个新的技术;在 Web 最初的时候,页面就是通过服务端渲染来返回的,用 PHP 来...

  • 服务端渲染

    一、服务端渲染需要考虑的问题 1、react 如何支持服务端渲染 import {renderToString, ...

  • 服务端渲染(SSR)

    一、服务端渲染与客户端渲染的差别 客户端渲染:服务端存放静态文件html,客户端发起请求,服务端不做任何修改,以资...

网友评论

      本文标题:服务端渲染

      本文链接:https://www.haomeiwen.com/subject/ouhguhtx.html