moke.js实现模拟数据
引入:
/模拟删除数据的方式/
var arr=[
{name:‘fei’,age:20,id:1},
{name:‘liang’,age:30,id:2},
{name:‘jun’,age:40,id:3},
{name:‘ming’,age:50,id:4}
]
删除: var arr=[
{name:‘fei’,age:20,id:1},
{name:‘liang’,age:30,id:2},
{name:‘jun’,age:40,id:3},
{name:‘ming’,age:50,id:4}
]
Mock.mock('http://www.bai.com','delete',function(options){
var id = parseInt(options.body.split("=")[1])//获取删除的id
var index;
for(var i in arr){
if(arr[i].id===id){//在数组arr里找到这个id
index=i
break;
}
}
arr.splice(index,1)//把这个id对应的对象从数组里删除
return arr;//返回这个数组,也就是返回处理后的假数据
})
$.ajax({
url:'http://www.bai.com',
type:"DELETE",
data:{
id:1//假设需要删除id=1的数据
},
dataType:'json',
success:function(e){
console.log(e)
}
})
增加: var arr=[
{name:‘fei’,age:20,id:1},
{name:‘liang’,age:30,id:2},
{name:‘jun’,age:40,id:3},
{name:‘ming’,age:50,id:4}
]
数据解析: function parseQueryStr(queryStr){
let queryData = {};
console.log("queryStr==",queryStr)
let queryStrList = queryStr.split('$');
console.log( queryStrList)
for (let [index,queryStr] of queryStrList.entries())
{
let itemList = queryStr.split("=");
queryData[itemList[0]] = decodeURLComponent(itemList[1]);
}
return queryData;
}
Mock.mock('http://www.bai.com/add','delete',function(options){
const datas =parseQueryStr(option.body);
var id =data.id;
var pown = true;
for (var i in arr){
if (arr[i].id==id){
pown = !pown;
}
}
arr.push(datas);
data={
data:pown?arr:null;
message:pown?"添加成功" :"数据已存在",
}
return data;
})
var index;
for(var i in arr){
if(arr[i].id===id){//在数组arr里找到这个id
index=i
break;
}
}
arr.splice(index,1)//把这个id对应的对象从数组里删除
return arr;//返回这个数组,也就是返回处理后的假数据
})
$.ajax({
url:'http://www.bai.com/add',
type:"DELETE",
data:{
name:'小鲤鱼',
age:13,
id:5,
},
dataType:'json',
success:function(e){
console.log(e.data)
alert(e.message)
}
})
修改: var arr=[
{name:'fei',age:20,id:1},
{name:'liang',age:30,id:2},
{name:'jun',age:40,id:3},
{name:'ming',age:50,id:4}
]
Mock.mock('http://www.bai.com/change','delete',function(options){
const datas =parseQueryStr(options.body);
var id =data.id;
for(var i in arr){
if(arr[i].id===id){//在数组arr里找到这个id
arr[i]=datas;
}
}
data = {
data:arr;
message:"修改成功"
}
return data
})
$.ajax({
url:‘http://www.bai.com/change’,
type:“DELETE”,
data:{
name:‘小鲤鱼’,
age:13,
id:5,
},
dataType:'json',
success:function(e){
console.log(e.data)
alert(e.message)
}
})
查询: var arr=[
{name:‘fei’,age:20,id:1},
{name:‘liang’,age:30,id:2},
{name:‘jun’,age:40,id:3},
{name:‘ming’,age:50,id:4}
]
Mock.mock(‘http://www.bai.com/finds’,‘delete’,function(options){
const datas =parseQueryStr(options.body);
var id =data.id;
for(var i in arr){
if(arr[i].id===id){//在数组arr里找到这个id
axius=arr[i];
}
}
data = {
data:arr;
message:“搜索成功”
}
return data;
})
$.ajax({
url:'http://www.bai.com/finds',
type:"DELETE",
data:{
id:1,
},
dataType:'json',
success:function(e){
console.log(e.data)
alert(e.message)
}
})