mock 笔记

Mock.mock()

rurl: 表示需要拦截的 URL,可以是 URL 字符串或 URL 正则。例如 //domain/list.json/、‘/domian/list.json’

rtype: 表示需要拦截的 Ajax 请求类型。例如 GET、POST、PUT、DELETE 等

template: 表示数据模板,可以是对象或字符串。例如 { ‘data|1-10’:[{}] }、‘@EMAIL’。

function: 表示用于生成响应数据的函数。

  • Mock.mock( template )
  1. 根据数据模板生成模拟数据。
  • Mock.mock( rurl, template )
  1. 记录数据模板。当拦截到匹配 rurl 的 Ajax 请求时,将根据数据模板 template 生成模拟数据,并作为响应数据返回。
  • Mock.mock( rurl, function( options ) )
  1. 记录用于生成响应数据的函数。当拦截到匹配 rurl 的 Ajax 请求时,函数 function(options) 将被执行,并把执行结果作为响应数据返回。
  • Mock.mock( rurl, rtype, template )
  1. 记录数据模板。当拦截到匹配 rurl 和 rtype 的 Ajax 请求时,将根据数据模板 template 生成模拟数据,并作为响应数据返回。
  • Mock.mock( rurl, rtype, function( options ) )
  1. 记录用于生成响应数据的函数。当拦截到匹配 rurl 和 rtype 的 Ajax 请求时,函数 function(options) 将被执行,并把执行结果作为响应数据返回。

Mock.setup()

配置拦截 Ajax 请求时的行为。支持的配置项有:timeout。

Mock.setup({
   timeout: 400
})
Mock.setup({
   timeout: '200-600'
})

Mock.Random

Mock.Random 是一个工具类,用于生成各种随机数据。

var Random = Mock.Random
Random.email()
// => "n.clark@miller.io"
Mock.mock('@email')
// => "y.lee@lewis.org"
Mock.mock( { email: '@email' } )
// => { email: "v.lewis@hall.gov" }

在这里插入图片描述

Mock.Random 中的方法与数据模板的 @占位符 一一对应,在需要时还可以为 Mock.Random 扩展方法,然后在数据模板中通过 @扩展方法 引用。例如:

Random.extend({
    constellation: function(date) {
        var constellations = ['白羊座', '金牛座', '双子座', '巨蟹座', '狮子座', '处女座', '天秤座', '天蝎座', '射手座', '摩羯座', '水瓶座', '双鱼座']
        return this.pick(constellations)
    }
})
Random.constellation()
// => "水瓶座"
Mock.mock('@CONSTELLATION')
// => "天蝎座"
Mock.mock({
    constellation: '@CONSTELLATION'
})
// => { constellation: "射手座" }

Basic 栗子

// 随机boolean
let Mock = require('mockjs')
let Random = Mock.Random;
console.log(Random.boolean()) // true | false  默认出现的概率各占50%
// 随机数 返回一个随机的自然数(大于等于 0 的整数)
console.log(Random.natural()) // 2306469825936490
// 返回一个随机整数
console.log(Random.integer()) // -647150315600000
// 返回一个随机浮点数
console.log(Random.float()) // 87518913236696.7
// 随机返回一个字符
console.log(Random.character()) // g
//随机返回一个整型数组
console.log(Random.range(1)) // [0]
console.log(Random.range(1,6)) // [1,2,3,4,5]
console.log(Random.range(1,6,3)) // [1,4]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

九亿少女无法触及的梦ى

您的赞赏,对我来说意义非凡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值