Mock使用
最简单的方法
数据模版
1 | { |
json预览
1 | // 模板生成数据预览(仅作预览,不作为API最终返回的数据) |
比较复杂的方法
Home · nuysoft/Mock Wiki (github.com)
cdn.bootcdn.net/ajax/libs/Mock.js/1.0.0/mock.js
安装
1 | # 安装 |
使用 Mock
1 | // |
新建一个api文件夹
新建request.js
1 | import config from "../config"; |
新建一个mock文件夹
新建index.js
1 | import Mock from './WxMock' |
新建WxMock.js
1 | /* eslint-disable */ |
新建mock.js文件
可以本地新建一个mock.js
文件
自行下载
新建page的mock文件夹
新建get
getArea.js
1 | export default { |
getCompleteRate.js
1 | export default { |
getInteraction.js
1 | export default { |
getMember.js
1 | export default { |
新建index.js
1 |
|
在page中的index.js中引用
微信小程序中宽度为750rpx,rpx为百分比长度
1 | // pages/dataCenter.js |
页面实例
数据模板定义规范 DTD
生成规则
有 7 种格式:
1 | 'name|min-max': value |
生成规则和示例:
1. 属性值是字符串 String
-
'name|min-max': string
通过重复
string
生成一个字符串,重复次数大于等于min
,小于等于max
。 -
'name|count': string
通过重复
string
生成一个字符串,重复次数等于count
。
2. 属性值是数字 Number
-
'name|+1': number
属性值自动加 1,初始值为
number
。 -
'name|min-max': number
生成一个大于等于
min
、小于等于max
的整数,属性值number
只是用来确定类型。 -
'name|min-max.dmin-dmax': number
生成一个浮点数,整数部分大于等于
min
、小于等于max
,小数部分保留dmin
到dmax
位。
1 | Mock.mock({ |
3. 属性值是布尔型 Boolean
-
'name|1': boolean
随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2。
-
'name|min-max': value
随机生成一个布尔值,值为
value
的概率是min / (min + max)
,值为!value
的概率是max / (min + max)
。
4. 属性值是对象 Object
-
'name|count': object
从属性值
object
中随机选取count
个属性。 -
'name|min-max': object
从属性值
object
中随机选取min
到max
个属性。
5. 属性值是数组 Array
-
'name|1': array
从属性值
array
中随机选取 1 个元素,作为最终值。 -
'name|+1': array
从属性值
array
中顺序选取 1 个元素,作为最终值。 -
'name|min-max': array
通过重复属性值
array
生成一个新数组,重复次数大于等于min
,小于等于max
。 -
'name|count': array
通过重复属性值
array
生成一个新数组,重复次数为count
。
6. 属性值是函数 Function
-
'name': function
执行函数
function
,取其返回值作为最终的属性值,函数的上下文为属性'name'
所在的对象。
7. 属性值是正则表达式 RegExp
-
'name': regexp
根据正则表达式
regexp
反向生成可以匹配它的字符串。用于生成自定义格式的字符串。1
2
3
4
5
6
7
8
9
10
11Mock.mock({
'regexp1': /[a-z][A-Z][0-9]/,
'regexp2': /\w\W\s\S\d\D/,
'regexp3': /\d{5,10}/
})
// =>
{
"regexp1": "pJ7",
"regexp2": "F)\fp1G",
"regexp3": "561659409"
}