返回顶部
首页 > 资讯 > 前端开发 > html >Vue基于NUXT的SSR有什么用
  • 322
分享到

Vue基于NUXT的SSR有什么用

2024-04-02 19:04:59 322人浏览 泡泡鱼
摘要

这篇文章主要介绍Vue基于NUXT的SSR有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!SSR首先说下 SSR,最近很热的词,意为 Server Side Rendering

这篇文章主要介绍Vue基于NUXT的SSR有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

SSR

首先说下 SSR,最近很热的词,意为 Server Side Rendering(服务端渲染),目的是为了解决单页面应用的 SEO 的问题,对于一般网站影响不大,但是对于论坛类,内容类网站来说是致命的,搜索引擎无法抓取页面相关内容,也就是用户搜不到此网站的相关信息。

抓取页面的前提是 html 含有被抓取内容,我们不妨看看基于 vue 的线上 SPA 页面请求时返回了什么

<!DOCTYPE html>
<html>
 <head>
  <meta charset=utf-8>
  <title>iDareX敢玩</title>
  <meta name=keyWords content="敢玩, iDareX, 敢玩TV, 敢玩活动, 敢玩自频道, 敢玩主题, 户外, 极限运动, 周边游, 探险, 时尚, 新潮, 运动视频, 体育, 新奇, 生活方式, 刺激, 惊险, 户外装备, 达人, 90后">
  <meta name=description content=自2014年10月创办以来,敢玩专注于极限户外和娱乐体育。从顽童、玩具、玩法三个方面,产出更专注于‘玩'的内容,已打造了一系列深受喜爱的娱乐体育真人秀和引爆网络的运动视频。!>
  <meta name=renderer content=WEBkit>
  <meta name=force-rendering content=webkit>
  <meta name=viewport content="width=1140">
  <meta Http-equiv=X-UA-Compatible content="IE=edge,chrome=1">
  <link rel="shortcut icon" href=static/favicon.ico type=image/x-icon>
  <link href=/static/CSS/app.eef5b81a3D1bee5054a791f452a34147.css rel=stylesheet>
 </head>
 <body>
  <div id=app></div>
  <script type=text/javascript src=/static/js/manifest.6d0adb8f2d8884be1c03.js></script>
  <script type=text/javascript src=/static/js/vendor.ec1cc90c9847c434ba7d.js></script>
  <script type=text/javascript src=/static/js/app.d7fd10ae7e4a68598037.js></script>
 </body>
</html>

我们的组件都是这个 html 文件返回后再渲染到 <div id=app></div> 里的。这就合理的解释了 SEO 缺陷的原因。

既然说到 SSR 可以解决 SEO 的问题,不难想到原理就是将我们的 html 在服务端渲染,合成完整的 html 文件再输出到浏览器。

另外 SSR 还适用以下场景

  1. 客户端的网络比较慢

  2. 客户端运行在老的或者直接没有 JavaScript 引擎上

vue 官网给出了 SSR 原理图片

Vue基于NUXT的SSR有什么用

对于这幅图的原理官网有详细解释,此类文章也很多,这里不赘述。

NUXT

我们进入正题说下 NUXT

Nuxt.js is a minimalistic framework for server-rendered Vue applications (inspired by Next.js)

作用就是在 node.js 上进一步封装,然后省去我们搭建服务端环境的步骤,只需要遵循这个库的一些规则就能轻松实现 SSR

安装流程

Nuxt.js 团队提供了 vue-cli 的初始化模板。前提安装 vue-cli,安装过的忽略此步

npm install -g vue-cli

完成后在需要创建的目录下执行以下

vue init nuxt/starter <project-name>
cd <project-name>
npm install

依赖安装完成后

npm run dev

打开浏览器 http://localhost:3000

说明:Nuxt.js 会监听 pages 目录下的改变,添加新 page 的时候不需要重启服务

目录结构

完成上面命令后你的目录结构会如下

Vue基于NUXT的SSR有什么用

Nuxt.js 给出了最简单的目录结构

|-- pages
  |-- index.vue
|-- package.JSON

也就是说,至少需要一个 page 来作为展示页。

文件的路径建议都采用绝对路径,表格如下

Vue基于NUXT的SSR有什么用

例:怎么在 /pages/user/me.vue 引入一个 static 文件夹里的图片

<img src="~static/img/loGo.png" alt="Logo"/>

路由

Nuxt.js 根据 pages 目录结构去生成 vue-router 配置,也就是说 pages 目录的结构直接影响路由结构

例1:

|-- pages
  |-- posts
    |-- index.vue
    |-- welcome.vue
  |-- about.vue
  |-- index.vue

会生成

routes: [
 {
  path: '/posts',
  component: '~pages/posts/index.vue'
 }, {
  path: '/posts/welcome',
  component: '~pages/posts/welcome.vue'
 }, {
  path: '/about',
  component: '~pages/about.vue'
 }, {
  path: '/',
  component: '~pages/index.vue'
 }
]

例2:隐藏路由

在文件名前加 _

|-- pages
  |-- _about.vue
  |-- index.vue

会生成

routes: [
 {
  path: '/',
  component: '~pages/index.vue'
 }
]

配置文件

目录下的 nuxt.config.js 是我们唯一的配置入口,这里不建议修改 .nuxt 目录,除非特殊需求

默认的给力我们三个配置 ·head·css·loading· 分别是头部设置,全局css,loading进度条

nuxt.config.js 的全部的配置如下,点击查看具体例子

  1. cache

  2. loading

  3. router

  4. css

  5. plugins

  6. head

另外还提供了 vuex 等配置,感兴趣可以去 GitHub 和官网。

NUXT 能为我们做什么

对于使用就说上面这么多(官网上都有,这里给大家一个概览),说下为什么选择 NUXT 来做 SSR

问题1:就是我们无需为了路由划分而烦恼,你只需要按照对应的文件夹层级创建 .vue 文件就行
问题2:无需考虑数据传输问题,nuxt 会在模板输出之前异步请求数据(需要引入 axiOS 库),而且对 vuex 有进一步的封装
问题3:内置了 webpack,省去了配置 webpack 的步骤,nuxt 会根据配置打包对应的文件

还有很多便捷之处,可以尝试去写一写,读读源码

以上是“Vue基于NUXT的SSR有什么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网html频道!

--结束END--

本文标题: Vue基于NUXT的SSR有什么用

本文链接: https://lsjlt.com/news/78468.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Vue基于NUXT的SSR有什么用
    这篇文章主要介绍Vue基于NUXT的SSR有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!SSR首先说下 SSR,最近很热的词,意为 Server Side Rendering...
    99+
    2024-04-02
  • 基于vue+canvas的excel-like组件有什么用
    这篇文章给大家分享的是有关基于vue+canvas的excel-like组件有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。a vue component,基于vue的表格...
    99+
    2024-04-02
  • 基于vue-ssr静态网站生成器VuePress的示例分析
    这篇文章主要介绍基于vue-ssr静态网站生成器VuePress的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!什么是VuePressVuePress由两部分组成:一个基于V...
    99+
    2024-04-02
  • 基于vue的框架有哪些
    基于vue的框架有:1.Vux;2.mint-ui;3.elementui;4.Iviewui;5.vant等。框架简介:Vux,是基于WeUI和vue(2.x)开发的移动端UI组件库,主要服务于微信页面。mint-ui,它依托了vue.j...
    99+
    2024-04-02
  • 基于Flex界面的组合SDK有什么用
    这篇文章给大家分享的是有关基于Flex界面的组合SDK有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Flex是Sun今后的重点产品,用以对抗Adobe的Flash和微软的Silverlight。这里将介绍...
    99+
    2023-06-17
  • 基于axios在vue中的使用
    目录一、Axios是什么二、Axios有哪些特性三、Axios浏览器支持四、安装1.使用 npm2.使用 bower3.使用 cdn五、用法(vue项目已搭建)1. Axios基础用...
    99+
    2024-04-02
  • 基于Yar的WordPress微博墙插件有什么用
    这篇文章主要介绍了基于Yar的WordPress微博墙插件有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。基于Yar的WordPress微博墙插件在现在移动互联网时代,...
    99+
    2023-06-20
  • 关于JVM的基础知识有什么呢
    这期内容当中小编将会给大家带来有关关于JVM的基础知识有什么呢,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。虚拟机给人的感觉像是操作系统、编译器:非常高大上。但是Java程序就跑在上面,遇到问题还得去排查...
    99+
    2023-06-02
  • 基于ARP的网络扫描工具netdiscover有什么用
    小编给大家分享一下基于ARP的网络扫描工具netdiscover有什么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!基于ARP的网络扫描工具netdiscoverARP是将IP地址转化物理地址的网络协议。通过该协议,可以...
    99+
    2023-06-04
  • 基于Vue中SEO优化的方案有哪些
    这篇文章将为大家详细讲解有关基于Vue中SEO优化的方案有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言:众所周知,Vue SPA单页面应用对SEO不友好,当然也...
    99+
    2024-04-02
  • OpenLayer基于vue的封装使用教程
    目录前言基本结构 _createView _createBaselayer_createMap _initMapEvt _initMapCon...
    99+
    2022-11-13
    vue OpenLayer vue OpenLayer封装
  • Vue + Webpack + Vue-loader有什么用
    这篇文章主要介绍Vue + Webpack + Vue-loader有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Vue-loader 是什么?vue-loader 是一个加...
    99+
    2024-04-02
  • vue中的key有什么用
    小编给大家分享一下vue中的key有什么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!key到底有什么用途 先来看官方解释 :key属性主要用在vue的虚拟DOM算法(diff算法), 在新旧nodes对比时辨识VNod...
    99+
    2023-06-22
  • vue的nextTick有什么作用
    这篇文章主要介绍“vue的nextTick有什么作用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue的nextTick有什么作用”文章能帮助大家解决问题。为什么要用nextTick请看如下一段代...
    99+
    2023-07-04
  • 关于vue-property-decorator的基础使用实践
    目录基本使用基础模板data数据定义生命周期钩子method方法计算属性其他选项装饰器函数@Component@Prop@PropSync@Emit@Ref@Watch@Model其...
    99+
    2022-11-13
    vue-property-decorator vue-property-decorator的使用
  • vue-router有什么用
    这篇文章主要介绍了vue-router有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。vue-router 快速入门配置路由$&nbs...
    99+
    2024-04-02
  • 基于ElasticSearch Analyzer的使用规则是什么
    本文小编为大家详细介绍“基于ElasticSearch Analyzer的使用规则是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“基于ElasticSearch Analyzer的使用规则是什么”文章能帮助大家解决疑惑,下面跟着小编的...
    99+
    2023-06-05
  • javascript是基于什么的语言
    这篇文章主要讲解了“javascript是基于什么的语言”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript是基于什么的语言”吧! ...
    99+
    2024-04-02
  • 基于图文界面的蓝牙扫描工具btscanner有什么用
    这篇文章主要为大家展示了“基于图文界面的蓝牙扫描工具btscanner有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“基于图文界面的蓝牙扫描工具btscanner有什么用”这篇文章吧。基于...
    99+
    2023-06-04
  • Vue中的Hooks有什么作用
    本篇内容介绍了“Vue中的Hooks有什么作用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Hooks 对于 Vue 意义着什么?Hooks...
    99+
    2023-06-29
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作