介绍一下vue中会用的插件,每个插件都值得好好研究,可自行查看官方文档:
一、nuxt.js
1、服务端渲染(SSR
)
以前,web大多是HTML和css构成的静态页面,每个用户行为要求服务器来创建和提供一个完整的界面。如何查看一个网站是否是 SSR 呢?很简单,比如打开一个含有文章内容的网站,查看它的源代码,看这些文字是不是都在源代码里面,如果是,那它就是 SSR;或者通过 Chrome 调试工具,在 network 面板查看有没有相关的异步请求来调取内容。
后端渲染的好处是,前端只负责将HTML展示,耗时少,利于SEO
。缺点是,网络传输数据量大,占用服务器运算资源,response出的数据量会大点,模板改了前端的交互和样式什么的一样得跟着联动修改。
前端渲染的好处是,网络传输数据量小(减少了服务器压力)。缺点是,前端耗时较多,不利于SEO。
2、nuxt.js简介(参照官网)
Nuxt.js 是一个基于 Vue.js 的通用应用框架。
通过对客户端/服务端基础架构的抽象组织,Nuxt.js 主要关注的是应用的 UI渲染。可以基于它初始化新项目的基础结构代码,或者在已有 Node.js 项目中使用 Nuxt.js。
Nuxt.js 预设了利用Vue.js开发服务端渲染的应用所需要的各种配置。
除此之外,我们还提供了一种命令叫:nuxt generate
,为基于 Vue.js 的应用提供生成对应的静态站点的功能。
我们相信这个命令所提供的功能,是向开发集成各种微服务(microservices)的 Web 应用迈开的新一步。
作为框架,Nuxt.js 为 客户端/服务端
这种典型的应用架构模式提供了许多有用的特性,例如异步数据加载、中间件支持、布局支持等。
二、axios
1、简介
axios 是一个基于 Promise , 同时支持浏览器端和node.js的 HTTP 库 , 常用于 Ajax 请求。
Vue不像 jQuery 或 AngularJS , 本身并没有携带 Ajax 方法 , 因此需要借助插件或第三方 HTTP库 , 而 axios 就是一个很不错的选择。
2、使用方法
- 安装,引入
npm install axios --save
import axios from 'axios'
- get请求
// 为给定 ID 的 user 创建请求
axios.get('/user?ID=12345')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
// 可选地,上面的请求可以这样做
axios.get('/user', {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
- post请求
axios.post('/user', {
firstName: 'Fred',
lastName: 'Flintstone'
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
- 执行多个并发请求
function getUserAccount() {
return axios.get('/user/12345');
}
function getUserPermissions() {
return axios.get('/user/12345/permissions');
}
axios.all([getUserAccount(), getUserPermissions()])
.then(axios.spread(function (acct, perms) {
// 两个请求现在都执行完成
}));