当前位置: 代码迷 >> 综合 >> mock.js入门
  详细解决方案

mock.js入门

热度:45   发布时间:2023-12-03 03:49:16.0

mock.js入门

    • 安装:cnpm install mockjs
    • 语法规范:
    • 数据模板定义:
          • 注意:
    • Mock.setup( settings ):

安装:cnpm install mockjs

// 使用 Mock
var Mock = require('mockjs')
var data = Mock.mock({
    // 属性 list 的值是一个数组,其中含有 1 到 10 个元素'list|1-10': [{
    // 属性 id 是一个自增数,起始值为 1,每次增 1'id|+1': 1}]
})
// 输出结果
console.log(JSON.stringify(data, null, 4))

语法规范:

Mock.js 的语法规范包括两部分:

数据模板定义规范(Data Template Definition,DTD)
数据占位符定义规范(Data Placeholder Definition,DPD)

数据模板定义:

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

// 属性名 name
// 生成规则 rule
// 属性值 value
'name|rule': value
注意:

属性名 和 生成规则 之间用竖线 | 分隔。
生成规则 是可选的。
生成规则 有 7 种格式:

‘name|min-max’: value
‘name|count’: value
‘name|min-max.dmin-dmax’: value
‘name|min-max.dcount’: value
‘name|count.dmin-dmax’: value
‘name|count.dcount’: value
‘name|+step’: value

生成规则 的含义需要依赖属性值的类型 才能确定。
属性值 中可以含有 @占位符。
属性值 还指定了最终值的初始值和类型。

Mock.setup( settings ):

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

settings
必选。

配置项集合。

timeout

可选。

指定被拦截的 Ajax 请求的响应时间,单位是毫秒。值可以是正整数,例如 400,表示 400 毫秒 后才会返回响应内容;也可以是横杠 ‘-’ 风格的字符串,例如 ‘200-600’,表示响应时间介于 200 和 600 毫秒之间。默认值是’10-100’。

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

在这里插入图片描述