Mock.js?是一款前端开发中拦截Ajax请求再生成随机数据响应的工具.可以用来模拟服务器响应.优点是非常简单方便,无侵入性,基本覆盖常用的接口数据类型。
如向数据库添加数据,一条一条添加太麻烦,就可以利用 Mock.js 自动生成
1. 使用npm安装
npm install mockjs;
2. 导入
var Mock = require("mockjs");
3. 自动生产数据
const Random = require('mockjs').Random;
var obj = {'aa':'11', 'bb':'22', 'cc':'33', 'dd':'44'};
// Mock生成数据
var data = Mock.mock({
"list|1-3": [{ // 随机生成1到3个数组元素
'name': '@cname', // 中文名称
'id|+1': 88, // 属性值自动加 1,初始值为88
'age|18-28': 0, // 18至28以内随机整数, 0只是用来确定类型
'birthday': '@date("yyyy-MM-dd")', // 日期
'city': '@city(true)', // 中国城市
'color': '@color', // 16进制颜色
'img': Random.image('200x100'), //自动生成图片
'isMale|1': true, // 布尔值
'isFat|1-2': true, // true的概率是1/3
'fromObj|2': obj, // 从obj对象中随机获取2个属性
'fromObj2|1-3': obj, // 从obj对象中随机获取1至3个属性
'brother|1': ['jack', 'jim'], // 随机选取 1 个元素
'sister|+1': ['jack', 'jim', 'lily'], // array中顺序选取元素作为结果
'friends|2': ['jack', 'jim'] // 重复2次属性值生成一个新数组
}]
});
生成内容如:
{
"name": "董静",
"id": 88,
"age": 25,
"birthday": "2015-04-01",
"city": "湖南省 怀化市",
"color": "#c0f279",
"img": "http://dummyimage.com/200x100"
"isMale": false,
"isFat": false,
"fromObj": {
"dd": "44",
"aa": "11"
},
"fromObj2": {
"bb": "22",
"cc": "33"
},
"brother": "jack",
"sister": "jack",
"friends": [
"jack",
"jim",
"jack",
"jim"
]
},
4. 添加到数据库
picasaModel.create(data.list)