1.首先感谢同事

2.之前一直在做angularjs的项目,目前vue火热,所以自己搭建了一个的vue框架,在此作为记录

vue+vux-ui这里就不介绍了,有很多博客都写的很详细了。

下面简单记录下axios 和 mock

1.axios

<1>  安装axios

npm install axios

<2>  使用axios

1.因为有时候项目需要稍微封装一下axios,所以我这里并没有直接像官网那里在入口main.js直接引入axios

2.按照官网的要求,我在src目录下新建了一个文件axios,然后新建了两个js文件

1.axios.post.form.js

2.axios.post.json.js

 这里记录第个axios.post.form.js文件:

1.首先引入axios

  
import axios from 'axios'

  2.自定义配置新建一个 axios 实例
  
const axiosPostForm = axios.create({
baseURL: "", // api的base_url
timeout: 5000, // request timeout
headers: {
'Content-Type': 'application/json'
}
})

  

  3.创建请求过滤器
 axiosPostForm.interceptors.request.use(
config => {
//根据实际项目修改拦截器
console.log(config);
config.data = config.data||{}
return config;
},
error =>{
return Promise.reject(error);
});
   4.创建响应过滤器
axiosPostForm.interceptors.response.use(
response => {
console.log(response);
return response.data
},
error => {
return Promise.reject(error);
})

  


    5.返回封装之后的axiosPostForm  
export default axiosPostForm

  

    下面是完整的这个JS文件

  
import axios from 'axios'

const axiosPostForm = axios.create({
baseURL: "", // api的base_url
timeout: 5000, // request timeout
headers: {
'Content-Type': 'application/json'
}
}) axiosPostForm.interceptors.request.use(
config => {
//根据实际项目修改拦截器
console.log(config);
config.data = config.data||{}
return config;
},
error =>{
return Promise.reject(error);
}); axiosPostForm.interceptors.response.use(
response => {
console.log(response);
return response.data
},
error => {
return Promise.reject(error);
})
export default axiosPostForm

  

<3> 接下来需要在入口main.js中引入该封装之后的axiosPostForm,以便全局使用
//引入axios
import axiosPostForm from './axios/axios.post.form'

 

//在vue的原型链上增加axiosPostForm
Vue.prototype.$axiosPostForm =  axiosPostForm;

  <4>在你的应用组建就可以直接使用封装之后的$axiosPostForm了,一下代码:

 this.$axiosPostForm({

     method: 'post',
url:"/userInfo", //这里是你的后端地址,如果没有,请看下面引入mock挡板数据
data: {
id: '100001',
name: 'xxxxxx'
}
}).then(function (res) {
console.log(res)
})
  以上,一个完整的axios服务已经完成,下面引入mock挡板

2.mockjs

<1> 安装mockjs

 npm install mockjs
<2> 在src文件新建mock文件夹
1.在mock文件夹目录下,新建两个文件,一个index.js,一个usermock.js
2.首先先在usermock.js,新建挡板数据,并暴露出来,代码如下:
  
export default {
   getUserInfo:()=>{
return {
code:"0",
message:"访问成功",
data:[{
id:1,
licNumber:'陕A79898',
color:1,
buyTime:'2017-04-01'
},
{
id:2,
licNumber:'陕A2222',
color:1,
buyTime:'2017-04-01'
},
{
id:3,
licNumber:'陕A3333',
color:1,
buyTime:'2017-04-01'
}]
}
}
}

  

<3> 在mock文件夹下的index.js中引入mock和上面写的usermock.js,代码如下
   import Mock from 'mockjs';
import userInfo from "./usermock" Mock.mock("/userInfo",'post',userInfo.getUserInfo());
export default Mock

  

<4>在入口文件main.js里面加入对Mock的控制(是否使用mock挡板)
  
const mock = true;
  if(mock){
  require("./mock");
  }

  


<5> 以上,在你的应用组建就可以直接使用
  
this.$axiosPostForm({
  method: 'post',
  url:"/userInfo",
  data: {
   id: '100001',
   name: 'xxxxxx'
  }
  }).then(function (res) {
   console.log(res)
  })

    over,以上是本次记录!!!



    


      

vue+vux-ui+axios+mock搭建一个简单vue框架的更多相关文章

  1. Vue.js学习笔记--菜鸟搭建一个企业级vue的项目

    vue.js新手搭建一个企业项目,从0开始 前置条件: node.npm请先安装配置好 下面开始: npm 下载vue-cli脚手架工具  确认安装成功看到版本号: 初始化项目,选用webpack(p ...

  2. 搭建一个简单struts2框架的登陆

    第一步:下载struts2对应的jar包,可以到struts官网下载:http://struts.apache.org/download.cgi#struts252 出于学习的目的,可以把整个完整的压 ...

  3. 从零开始搭建一个简单的基于webpack的vue开发环境

    原文地址:https://segmentfault.com/a/1190000012789253?utm_source=tag-newest 从零开始搭建一个简单的基于webpack的react开发环 ...

  4. 超详细,新手都能看懂 !使用SpringBoot+Dubbo 搭建一个简单的分布式服务

    来自:JavaGuide Github 地址:https://github.com/Snailclimb/springboot-integration-examples 目录: 使用 SpringBo ...

  5. 使用ant design vue的日历组件,实现一个简单交易日与非交易日的切换

    使用ant design vue的日历组件,实现一个简单交易日与非交易日的切换 需求: 日历区分交易日.非交易日 可以切换面板查看整年交易日信息 可以在手动调整交易日.非交易日 演示实例 序--使用软 ...

  6. Prism for WPF 搭建一个简单的模块化开发框架(一)

    原文:Prism for WPF 搭建一个简单的模块化开发框架(一) 最近闲来无事又想搞搞WPF..... 做个框架吧,可能又是半途而废....总是坚持不下来 不废话了, 先看一下工程结构 布局大概是 ...

  7. 使用 SpringBoot+Dubbo 搭建一个简单分布式服务

    实战之前,先来看几个重要的概念 开始实战之前,我们先来简单的了解一下这样几个概念:Dubbo.RPC.分布式.由于本文的目的是带大家使用SpringBoot+Dubbo 搭建一个简单的分布式服务,所以 ...

  8. 用nodejs搭建一个简单的服务器

    使用nodejs搭建一个简单的服务器 nodejs优点:性能高(读写文件) 数据操作能力强 官网:www.nodejs.org 验证是否安装成功:cmd命令行中输入node -v 如果显示版本号表示安 ...

  9. 初学Node(六)搭建一个简单的服务器

    搭建一个简单的服务器 通过下面的代码可以搭建一个简单的服务器: var http = require("http"); http.createServer(function(req ...

随机推荐

  1. asp.net mvc +easyui 实现权限管理(二)

    一写完后,好久没有继续写了.最近公司又在重新开发权限系统了,但是由于我人微言轻,无法阻止他们设计一个太监版的权限系统.想想确实是官大一级压死人啊, 没办法我只好不参与了 让他们去折腾. 我就大概说一下 ...

  2. idea 自定义视图

    效果: 设置:!file:.iml&&!file:.idea//&&!file:.settings//*&&!file:.classpath&& ...

  3. Latex 数学公式使用入门

    Latex 数学公式使用示例 Latex 数学公式命令中,数学符号都使用反斜杠(backslash, '\')转义英文缩略词 , 一些简单的数学符号命令: 其使用大括号(curly braces, ' ...

  4. 网站换了HTTPS后残留部分http处理方式

    网站换了HTTPS后残留部分http处理方式,以前添加的文章里面是有http的,导致浏览器打开网站的时候提示证书不安全,解决方法很简单 在html页面上加上这一段话 <!-- 强制让http的访 ...

  5. AIX常用命令学习(一)

    1.prtconf命令 查看AIX主机的结构特征状态 语法: prtconf [ -c ] [ -k ] [ -L ] [ -m ] [ -s ] [ -v ] Flags: -c  Displays ...

  6. windows zend_guard+apache no ssl+php no Thread Safe fastcgi模式 环境配置

    最近公司要做代码加密,就采用ZEND GUARD 方式加密代码 并进行显示 此文为总结,以备自己以后查看和给需要的同学们参考 采用的php为5.3版本  由于现在加密的更改, 能支持zend guar ...

  7. Hive的介绍及安装

    简介 Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件 映射为一张数据库表,并提供类 SQL 查询功能. 本质是将 SQL 转换为 MapReduce 程序. Hive组件 ...

  8. [翻译] FBNetworkReachability

    FBNetworkReachability You can use FBNetworkReachabilty class to get network reachability on iOS devi ...

  9. SQL语言DDL DML DCL TCL四种语言

    1.DDL(Data Definition Language)数据库定义语言:DDL使我们有能力创建或删 除表格.可以定义索引(键),规定表之间的链接,以及施加表间的 约束. • 常见DDL 语句: ...

  10. Linux 系统DNS解析原理

    DNS:域名的解析,也称A记录,CDN服务器   配置文件位置:       vi /etc/resolv.conf 解析原理 DNS就像一个倒挂的树,定点是点. www.baidu.com ==&g ...