最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

mockjs的常用方法分享

来源:动视网 责编:小采 时间:2020-11-27 19:58:04
文档

mockjs的常用方法分享

mockjs的常用方法分享:本文主要和大家分享mockjs的常用方法,结合文字和代码和大家讲解,希望能帮助到大家。一.mock.mock()根据数据模板生成模拟数据。更关键的是,我们发起Ajax请求的时候要能够接收到这些数据。这就是Mock.mock()的作用啦!Mock.mock( rurl, r
推荐度:
导读mockjs的常用方法分享:本文主要和大家分享mockjs的常用方法,结合文字和代码和大家讲解,希望能帮助到大家。一.mock.mock()根据数据模板生成模拟数据。更关键的是,我们发起Ajax请求的时候要能够接收到这些数据。这就是Mock.mock()的作用啦!Mock.mock( rurl, r


本文主要和大家分享mockjs的常用方法,结合文字和代码和大家讲解,希望能帮助到大家。

一.mock.mock()

根据数据模板生成模拟数据。更关键的是,我们发起Ajax请求的时候要能够接收到这些数据。这就是Mock.mock()的作用啦!

Mock.mock( rurl?, rtype?, template|function( options ) )

(1).参数的含义和默认值

参数 rurl:可选。表示需要拦截的 URL,可以是 URL 字符串或 URL 正则。例如 /\/domain\/list.json/、'/domian/list.json'。
参数 rtype:可选。表示需要拦截的 Ajax 请求类型。例如 GET、POST、PUT、DELETE 等。
参数 template:可选。表示数据模板,可以是对象或字符串。例如 { 'data|1-10':[{}] }、'@EMAIL'。
参数 function(options):可选。表示用于生成响应数据的函数。
参数 options:指向本次请求的 Ajax 选项集。

(2).方法

2.Mock.mock( template ) 根据数据模板生成模拟数据

3.Mock.mock( rurl, template )
记录数据模板。当拦截到匹配 rurl 的 Ajax 请求时,将根据数据模板 template 生成模拟数据,并作为响应数据返回。

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

5.Mock.mock( rurl, rtype, template )
记录数据模板。当拦截到匹配 rurl 和 rtype 的 Ajax 请求时,将根据数据模板 template 生成模拟数据,并作为响应数据返回。

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

(3).列子

var data8 = Mock.mock(/\.json/,"get",{ 
 "name":"@name", 
 "isTrue|1":true, 
 "color":"@color" 
}) 
 
Mock.mock(/\.json/, 'post', function(options) { 
 return options.type 
}) 
$.ajax({ 
 url: 'hello.json', 
 type: 'get', 
 dataType: 'json' 
}).done(function (data, status, jqXHR) { 
 $('<pre>').text(JSON.stringify(data, null, 4)) 
 .appendTo('body') 
}) 
 
$.ajax({ 
 url: 'hello.json', 
 type: 'post', 
 dataType: 'json' 
}).done(function (data, status, jqXHR) { 
 $('<pre>').text(JSON.stringify(data, null, 4)) 
 .appendTo('body') 
})

查看官网列子

二.Mock.Random

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

(1).基本使用

1.Mock.Random.boolean() 返回一个随机的布尔值。

2.Random.natural() 返回一个随机的自然数(大于等于 0 的整数)

3.Random.integer()返回一个随机的整数。

4.Random.float()返回一个随机的浮点数。

5.Random.character()返回一个随机字符。

6.Random.string()返回一个随机字符串

7.Random.range( start?, stop, step? )返回一个整型数组。

查看官网

(2).日期+时间

1.日期
Random.date() "2002-10-23"
Random.date('yyyy-MM-dd') // "1975-04-27"
Random.date('yy-MM-dd') // "00-01-08"

2.时间:
Random.time() // "05:06:06"

3.日期和时间
Random.datetime('yyyy-MM-dd A HH:mm:ss')

4.当前的日期和时间 Ranndom.now()

(3).模拟Web数据

(4).模拟地理位置数据

(5).颜色+文本+姓氏(名字)

请查看官网

三.Mock.valid( template, data )

校验真实数据 data 是否与数据模板 template 匹配。

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

eg:

var template = {
 name: 'value1'
}
var data = {
 name: 'value2'
}
Mock.valid(template, data)
// =>
[
 {
 "path": [
 "data",
 "name"
 ],
 "type": "value",
 "actual": "value2",
 "expected": "value1",
 "action": "equal to",
 "message": "[VALUE] Expect ROOT.name'value is equal to value1, but is value2"
 }
]

四.Mock.toJSONSchema( template )

把 Mock.js 风格的数据模板 template 转换成 JSON Schema。

五.Mock.setup()

Mock.setup( settings ) 配置拦截 Ajax 请求时的行为。支持的配置项有:timeout。

  1. 参数的含义和默认值
    settings 必选。配置项集合。
    timeout 可选。
    指定被拦截的 Ajax 请求的响应时间,单位是毫秒。值可以是正整数,例如 400,表示 400 毫秒 后才会返回响应内容;也可以是横杠 '-' 风格的字符串,例如 '200-600',表示响应时间介于 200 和 600 毫秒之间。默认值是'10-100'。

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

    目前,接口 Mock.setup( settings ) 仅用于配置 Ajax 请求,将来可能用于配置 Mock 的其他行为。

文档

mockjs的常用方法分享

mockjs的常用方法分享:本文主要和大家分享mockjs的常用方法,结合文字和代码和大家讲解,希望能帮助到大家。一.mock.mock()根据数据模板生成模拟数据。更关键的是,我们发起Ajax请求的时候要能够接收到这些数据。这就是Mock.mock()的作用啦!Mock.mock( rurl, r
推荐度:
标签: 方法 js 方式
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top