主要包含4个参数:

  • template: Mock数据模板,根据特定语法可以定义随机的多个数据。例如 { 'data|1-10':[{}] }'@EMAIL'
  • rurl: 匹配到对应的 Ajax 请求会拦截下来并返回 template 或 function。可以是 URL 字符串或 URL 正则。例如 /\/domain\/list\.json/'/domian/list.json'
  • rtype: 为 rurl 增加方法类型的限制,如只匹配对应的GET类型请求
  • function(options): lambda函数,可以额外将template数据进行封装处理或者在没有template中直接返回数据
    • options是默认传入参数,含有 urltypebody 三个属性

样例

const data = Mock.mock({
  "list|1-10": [{
    "id|+1": 1,
    "name": "@name",
    "age|1-100": 100,
  }]
})
 
Mock.mock("/api/data", "get", (options) => {
  if (data == null) {
    return {
      code: 404,
      message: '数据未找到'
    }
  }
  console.log(options.body)
  console.log(options.url)
  console.log(options.type)
  return {
    code: 200,
    message: '成功',
    data: data
  }
})

会拦截 /api/data 类型为 GET 的请求,并返回对应格式的json数据包,如图: