Mock 语法讲解

Mock 是生成随机数据,拦截 Ajax 请求的 JavaScript 库。

本文来介绍下 Mock 的常用语法。

模拟数据

生成随机数据

Mock.Random.boolean()

生成一个随机的布尔值。例如:

返回值为 truefalse

Mock.Random.integer(min, max)

生成一个随机的整数,可以指定范围。例如:

返回值为 010 之间的整数。

Mock.Random.float(min, max, dmin, dmax)

生成一个随机的浮点数,可以指定范围和精度。例如:

返回值为 0.00100.00000 之间的浮点数,精度为 25 位小数。

Mock.Random.string(length)

生成一个随机的字符串,可以指定长度。例如:

返回值为长度为 10 的随机字符串。

Mock.Random.date()

生成一个随机的日期。例如:

返回值为随机日期的字符串表示,例如 "1977-07-03"

Mock.Random.time()

生成一个随机的时间。例如:

返回值为随机时间的字符串表示,例如 "05:38:02"

Mock.Random.datetime()

生成一个随机的日期时间。例如:

返回值为随机日期时间的字符串表示,例如 "2007-06-29T22:03:06.140Z"

Mock.Random.image(size, background, foreground, format, text)

生成一个随机的图片,可以指定大小、背景色、前景色、格式和文字。例如:

返回值为图片的 Base64 编码字符串。

生成数据模板指定的数据

Mock.mock(template) 根据数据模板生成模拟数据。数据模版可以生成复杂的数据结构。

数据模版的语法如下:

  • 属性名和属性值之间用 : 分隔。
  • 属性与属性之间用 , 分隔。
  • 属性值是字符串类型,可以使用 @ 来表示占位符。
  • 属性值是对象类型,可以使用 name|rule 来表示生成规则。

示例:

1const Mock = require('mockjs') 2 3const data = Mock.mock({ 4 'list|1-10': [{ 5 'id|+1': 1, // 从 1 开始,每次加 1 6 'name': '@cname', // 随机中文名字 7 'age|18-60': 1, // 18 到 60 岁之间的整数 8 'gender|1': ['男', '女'], // 男或女 9 'email': '@email' // 随机电子邮件地址 10 }] 11}) 12 13console.log(data)

输出:

1{ 2 "list": [ 3 { 4 "id": 1, 5 "name": "林志玲", 6 "age": 32, 7 "gender": "女", 8 "email": "kbsc@pmpuaaq.pk" 9 }, 10 { 11 "id": 2, 12 "name": "周杰伦", 13 "age": 55, 14 "gender": "男", 15 "email": "whq@zjfwq.uz" 16 }, 17 ... 18 ] 19}

模拟接口

  • Mock.mock(url, template) 根据接口地址和数据模板模拟接口请求。
  • Mock.mock(method, url, template) 根据请求方法、接口地址和数据模板模拟接口请求。

以上是 Mock 中常用的语法,更多语法请查阅官方文档。想进阶成为一位 Mock 高手?Apifox 是一个强大的接口文档管理工具,用 Apifox 可以让 Mock 变得更容易。Apifox 语法完全兼容 Mock, 并扩展了一些 Mock 没有的语法(如国内手机号 @phone)。小伙伴们可以去体验下。

知识扩展:

更多 Mock 相关知识可点击下方链接查看。

点赞
收藏

评论区

加载中...

相关推荐

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

PHP 微信公众号消息加解密

公众号配置根据提示设置即可:【图中信息均为无意义数据,仅供参考。注意服务器地址需可接收GET/POST两种请求】AESKey直接点一下随机生成即可,Token可以生成一个UUID再把UUID进行MD5一次即可。接收关注事件消息示例请求参数校验这一步根据项目情况,可供参考:(Lumen框架)php$valida

Java Random类、ThreadLocalRandom类

Random和ThreadLocalRandom类均用于生成伪随机数。Random的构造函数:Random()   默认以系统当前时间为种子,相当于Random(System.currentTimeMillis())Random(long seed)常用方法:nextXxx()  生成对应类型的伪随机数。示例:Rando

SparkSql学习1 —— 借助SQlite数据库分析2000万数据

总所周知,Spark在内存计算领域非常强势,是未来计算的方向。Spark支持类Sql的语法,方便我们对DataFrame的数据进行统计操作。但是,作为初学者,我们今天暂且不讨论Spark的用法。我给自己提出了一个有意思的思维游戏:Java里面的随机数算法真的是随机的吗?好,思路如下:1\.取样,利用Java代码随机生成2000万条01

#随机数#生成指定范围的随机数

!illustration(https://static.oschina.net/uploads/img/201611/27002454_Ta76.jpg)捡起丢下一个多月的Java,重新复习书本上的东西,来到随机数这一部分:问题:生成指定范围的随机数,比如生成\10,20)区间内的随机整数、生成\0,50\区间内的随机整数。Java

MySQL企业版之数据脱敏功能

利用企业级特性给敏感数据打码。1\.插件安装2\.数据打码插件应用2.1隐藏重要数据2.2生成随机数据并打码2.3基于字典生成随机值2.4其他要注意的地方3\.总结4\.延伸阅读MySQL企业版从8.0.13开始,新增一个插件叫做DataMaskingandDeIdentification,我将其简