美文网首页
Mock.js常用

Mock.js常用

作者: 多吃水果多锻炼 | 来源:发表于2021-12-23 15:24 被阅读0次

数据模板定义规范

数据模板中的每个属性由3部分构成:属性名、生成规则、属性值,即:

// 属性名 name
// 生成规则 rule
// 属性值 value
'name|rule':value
string
通过重复 string 生成一个字符串,重复次数大于等于 min,小于等于 max

'name|min-max':string    
举例:
会随机产生 min-max 个 ★
Mock.mock({
    "string|1-10": "★"
})
通过重复 string 生成一个字符串,重复次数等于 count

'name|count':string
举例:
会产生 count 个 ★
Mock.mock({
    "string|3": "★"
})
Number
属性值自动加 1,初始值为 number

'name|+1':number    
属性值为min-max范围内的随机整数

'name|min-max':number
属性值为min-max之间的随机小数,保留小数点的长度大于等于min,小于等于max

'name|min-max.dmin-dmax': number

例:
属性值为1-100之间的随机小数,保留小数点的长度大于等于1,小于等于10
Mock.mock({
  "number|1-100.1-10": 1
})

属性值整数部分固定为123,保留小数点的长度大于等于1,小于等于10
Mock.mock({
  "number|123.1-10": 1
})

属性值整数部分固定为123,保留3位小数点
Mock.mock({
  "number|123.3": 1
})

属性值的固定部分为123.123,剩余七位小数随机变化,小数点部分的长度固定为10位不变
Mock.mock({
  "number|123.10": 1.123
})
Boolean
随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2。

'name|1':boolean
随机生成一个布尔值,值为 value 的概率是 min / (min + max),值为 !value 的概率是 max / (min + max)。

'name|min-max': value
Object
从属性值 object 中随机选取 count 个属性

'name|count':object

举例:
从 json 对象中随机选取 2 个属性
Mock.mock({
  "object|2": {
    "310000": "上海市",
    "320000": "江苏省",
    "330000": "浙江省",
    "340000": "安徽省"
  }
})
从属性值 object 中随机选取 min 到 max 个属性

'name|min-max': object
Array
从属性值 array 中随机选取 1 个元素,作为最终值

'name|1': array
从属性值 array 中顺序选取 1 个元素,作为最终值

'name|+1': array
通过重复属性值 array 生成一个新数组,重复次数大于等于 min,小于等于 max

'name|min-max': array
通过重复属性值 array 生成一个新数组,重复次数为 count

'name|count': array
Function
执行函数 function,取其返回值作为最终的属性值,函数的上下文为属性 'name' 所在的对象

'name': function

举例:
Mock.mock({
  'foo': 'Syntax Demo',
  'name': function() {
    return this.foo
  }
})
生成的数据:
{
  "foo": "Syntax Demo",
  "name": "Syntax Demo"
}
根据正则表达式 regexp 反向生成可以匹配它的字符串。用于生成自定义格式的字符串

'name': regexp

数据占位符定义

详细内容参照:
Mock.js

相关文章

网友评论

      本文标题:Mock.js常用

      本文链接:https://www.haomeiwen.com/subject/gnihqrtx.html