mock数据

var arr=['momo','yanzi','ziwei']
var obj={
'host':'www.baidu',
'port':'12345',
'node':'selector'
}

    Mock.mock('http://www.bai.com',{
        'firstName|3':'fei',//重复fei这个字符串 3 次,打印出来就是'feifeifei'。
        'lastName|2-5':'jiang',//重复jiang这个字符串 2-5 次。
        'big|+1':0, //属性值自动加 1,初始值为 0
        'age|20-30':25,//生成一个大于等于 20、小于等于 30 的整数,属性值 25 只是用来确定类型
        'weight|100-120.2-5':110.24,//生成一个浮点数,整数部分大于等于 100、小于等于 120,小数部分保留 2 到 5 位。
        'likeMovie|1':Boolean,//随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2。
        'friend1|1':arr,//从数组 arr 中随机选取 1 个元素,作为最终值。
        'friend2|+1':arr,//从属性值 arr 中顺序选取 1 个元素,作为最终值
        'friend3|2-3':arr,//通过重复属性值 arr 生成一个新数组,重复次数大于等于 2,小于等于 3。
        'life1|2':obj,//从属性值 obj 中随机选取 2 个属性
        'life1|1-2':obj,//从属性值 obj 中随机选取 1 到 2 个属性。
        'regexp1':/^[a-z][A-Z][0-9]$/,//生成的符合正则表达式的字符串
        
    })

    $.ajax({
        url:'http://www.bai.com',
        dataType:'json',
        success:function(e){
            console.log(e)
        }
    })

vue中使用mock数据

npm install mockjs --save-dev
1
使用
1、新建mock.js

import Mock from 'mockjs'

Mock.mock("/getTest",{
"name1|1-3": 'a',
"name2|2": 'b',
});

2、新建vue文件

3、main.js

import Mock from "./javascript/mock"

数据增删改查模拟与调用

import Mock from 'mockjs'
// 模拟数据列表
var arr = [];
for (let i = 0; i < 10; i++) {
let newArticleObject = {
name: '小明',
content: '内容',
id: i
}
arr.push(newArticleObject); //将模拟的数据放到数组中
}

// 数据的删除操作
let list = function (options) {
// console.log(options.type);
let rtype = options.type.toLowerCase(); //获取请求的类型并转换为小写
switch (rtype) {
case 'get':
break;
case 'post':
let id = parseInt(JSON.parse(options.body).params.id); // 获取请求的id,将options.body转换为JSON对象
arr = arr.filter(function (val) {
return val.id != id; // 过滤掉前台传过来的id对应的相应数据,并重新返回
});
break;
default:
break;
}
return {
data: arr
}
}
Mock.mock('/list', /get|post/i, list);

// 数据的添加操作
let listAdd = function (options) {
// console.log("传过来的数据"+JSON.parse(options.body).params.obj);
let obj = JSON.parse(options.body).params.obj;
// console.log("数据获取"+ obj);
arr = arr.concat(obj); // 将前台返回来的数据,拼接到数组中。
return {
data: arr
}
}
Mock.mock('/listAdd', /get|post/i, listAdd);

// 数据的修改操作
let listUpdate = function (options) {
let obj = JSON.parse(options.body).params.obj;
// console.log(JSON.parse(options.body).params);
// let id = parseInt(JSON.parse(options.body).params.obj.id);
arr = arr.map(val => { // 将需要替换的数据替换掉
// console.log(val)
return val.id == obj.id ? obj : val;
});
return {
data: arr
}
}
Mock.mock('/listUpdate', /get|post/i, listUpdate);

vue中调用

posted @ 2020-05-04 09:01  木头小屋  阅读(375)  评论(0编辑  收藏  举报