入门案例
需求:生成 4 条列表数据。效果如下:
{ memberList:
[
{ id: 1, name: '小梦' },
{ id: 1, name: '小梦' },
{ id: 1, name: '小梦' },
{ id: 1, name: '小梦' }
]
}
编码实现:
-
新建 StudentProject\VueProject\mockjs-demo 目录,通过命令 提示符窗口进入到该文件夹,执行下面命令进
行初始化项目npm init -y
-
Mock.js 安装
npm install mockjs
新3.建 demo1.js 代码如下
const Mock = require('mockjs')
const data = Mock.mock({
'memberList|4':
[ {
'id': 1, 'name': '小梦'
}
] })
// stringify(数据, 数据转换函数,缩进空格数)
console.log(JSON.stringify(data, null, 2)) //查看效果,执行命令 node demo1.js
查看效果,执行命令
node demo1.js
语法规则
Mock.js 的语法规范包括两部分:
1. 数据模板定义规范(Data Template Definition,DTD)
2. 2. 数据占位符定义规范(Data Placeholder Definition,DPD)
数据模板定义规范 DTD
数据模板中的每个属性由 3 部分构成:属性名、生成规则、属性值:
// '属性名|生成规则':
属性值 'name|rule': value
注意:
属性名 和 生成规则 之间用竖线 | 分隔。
生成规则 是可选的,生成规则 有 7 种格式:
1. 'name|min-max': value
2. 'name|count': value
3. 'name|min-max.dmin-dmax': value
4. 'name|min-max.dcount': value
5. 'name|count.dmin-dmax': value
6. 'name|count.dcount': value 7. 'name|+step': value
- 生成规则 的 含义 需要依赖 属性值的类型 才能确定。
- 属性值 中可以含有 @占位符 。
- 属性值 指定了最终值的初始值和类型。