yarn add mockjs --save
2. vue 项目中 在 mian.js 中 根据环境决定是否使用mcok
3. src 文件下创建 mock/index.js
4. 在mock/index.js文件下 写入自己的数据 例如:
5. vue 文件种 直接使用接口 例如:
Mock.js (官网地址:http://mockjs.com/)是一款模拟数据生成器,旨在帮助前端工程师独立于后端进行开发,帮助编写单元测试。提供了以下模拟功能:
1,根据数据模板生成模拟数据
2,模拟 Ajax 请求,生成并返回模拟数据
3,基于 HTML 模板生成模拟数据
1.安装mock
2.在src下新建一个mock文件 引入mock.js
3.在页面中发送请求
4.在mock文件夹下的index.js中设置mock数据,并拦截请求,将假数据传入页面
1.属性值是字符串
'name|min-max': string
通过重复 string 生成一个字符串,重复次数大于等于 min,小于等于 max。
'name|count': string
通过重复 string 生成一个字符串,重复次数等于 count。
2.属性值是数字
name|+1': number
属性值自动加 1,初始值为 number。
’name|min-max': number
生成一个大于等于 min、小于等于 max 的整数,属性值 number 只是用来确定类型。
'name|min-max.dmin-dmax': number
生成一个浮点数,整数部分大于等于 min、小于等于 max,小数部分保留 dmin 到 dmax 位。
3.属性值是布尔类型
'name|1': boolean
随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2。
4.属性值是数组
'name|1': array
从属性值 array 中随机选取 1 个元素,作为最终值。
'name|+1': array
从属性值 array 中顺序选取 1 个元素,作为最终值。
'name|min-max': array
通过重复属性值 array 生成一个新数组,重复次数大于等于 min,小于等于 max。
'name|count': array
通过重复属性值 array 生成一个新数组,重复次数为 count。
在开发过程中,有很多的ajax请求,前后端分离开发你肯定遇到这样的问题,后台给你的接口文档,你需要在本地模拟数据返回,可能你也用到过我之前用的蠢方法,就是新建一个test.json文件,放入接口文档中写的返回示例,这么做有个很大的问题是不够灵活,而且还需要切换url,现在学会使用mock.js拦截ajax请求,更加方便的构造你需要的假数据。
在这里我举的例子是在vue项目中如何使用mock.js。
这里我举例最常用的格式
Mock.mock(url,data)
url用正则写,这样get请求传参时,也能拦截数据了。
不设置延时很有可能遇到坑,这里需要留意,因为真实的请求是需要时间的,mock不设置延时则是马上拿到数据返回,这两个情况不同可能导致在接口联调时出现问题。所以最好要先设置延时请求到数据。
生成规则和示例:
Mock.Random 提供的完整方法(占位符)如下: