1、初识Nuxt.js
官网:Nuxt.js官方文档
-
Nuxt.js是一个基于Vue.js的通用应用框架。主要关注的是应用的UI渲染。
-
Nuxt.js预设了利用Vue.js开发服务端渲染的应用所需要的各种配置。
我们都知道Vue.js原来是开发
SPA(单页应用,Single Page Application)
的,现在很多人想用Vue开发多页应用
,并想要在服务端完成渲染
。Nuxt.js
应运而生,它简化了SSR
的开发难度,而且还可以直接用命令把我们制作的vue项目生成静态html
nuxt generate命令:
为基于Vue.js的应用提供生成对应的静态站点的功能。
按照官方说法:
“是向开发集成各种微服务(Microsevices)的Web应用迈开的新一步”
作为框架,
Nuxt.js
为客户端/服务端这种典型的应用架构模式提供了许多有用的特性,例如异步数据加载、中间件支持、布局支持等。
什么是SSR?
SSR
,即服务端渲染(Server Side Render),就是在服务器端将对Vue页面进行渲染生成html文件,将html页面传递给浏览器。
SSR两个优点:
SEO不同于SPA的HTML只有一个无实际内容的HTML和一个app.js,SSR生成的HTML是有内容的,这让搜索引擎能索引到页面内容。
更快内容到达时间:传统的SPA引用是将bundle.js从服务器获取,然后在客户端解析并挂载到dom。而SSR直接将HTML字符串传递给浏览器。大大加快了首屏加载时间。SEO:
VUE SPA(单页) 新闻 搜索引擎
2、到底NUXT.js有什么吸引人的地方?
最主要的原因是
SPA(单页应用)不利于搜索引擎SEO操作
,比如制作一个类似新闻网站等,流量的一个主要来源是通过百度等搜索引擎,但是它们对SPA的抓取并不好,特别是百度根本没法抓取到SPA的内容页面,所以我们必须把我们的应用在服务端渲染成适合搜索引擎抓取的页面,再下载到客户端。Nuxt.js
适合做新闻、博客、电影、咨询这样的需要搜索引擎提供流量的项目
。
- 基于Vue.js
- 自动代码分层
- 服务端渲染
- 强大的路由功能,支持异步数据
- 静态文件服务
- ES2015+语法支持
- 打包和压缩JS和CSS
- HTML头部标签管理
- 本地开发支持热加载
- 集成ESLint
- 支持各种样式预处理器:SASS、LESS、Stulus等等
- 支持HTTP/2推送
3、Nuxt环境搭建 — Hello Nuxt
在使用npm前需要安装Node到系统中,如果你还没有或是不会安装Node,那就先从Vue基础课程开始学起吧。如果你已经安装了,省略这步。
npm install vue-cli -g
测试是否安装成功(出现版本号,即为安装成功)
vue-V
使用
init
命令来初始化Nuxt.js
项目
vue init nuxt/starter
npm install
这个过程要等一会,如果这个过程安装失败,不要慌,你可以直接删除项目中的
node_modules文件
夹后,重新npm install
安装
npm run dev
在项目根目录下找到
/pages/index.vue
文件,让后把项目名称改写成Hello World(这里我就写自己名字了)。框架支持热更新
,所以你不用刷新就自动更新了。
展示: