您的位置:首页 > Web前端 > JavaScript

mock.js使用教程

2018-08-15 16:24 791 查看

     相信很多人看过mock.js官方教程, 都比较懵逼,对于前端来说只是在后端没有给接口的时候做一个简单的测试。所以我在这里给大家做简单的一个示范,告诉你如何使用。

 

cdn引入文件 <script src="http://mockjs.com/dist/mock.js"></script>

示例一:

[code]
Mock.mock('http://www.bai.com',{'name|3':'lz','age|20-60':25})
//url,请求路径。       //请求的数据。

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

数据模板

 上面的代码中 

       {'name|3':'lz'}  此为模板数据格式

        属性名name、  生成规则: 重复属性自3次 ,   属性值:lz

1.'name | min-max': string   通过重复 string 生成一个字符串,重复次数大于等于 min,小于等于 max

2. 'name | count':  string   通过重复 string 生成一个字符串,重复次数等于 count

3.'name | min-max': number   生成一个大于等于 min、小于等于 max 的整数,属性值 number 只是用来确定类型。

4.'name | +1': number   属性值自动加 1,初始值为 number

5.'name | min-max.dmin-dmax': number   生成一个浮点数,整数部分大于等于 min、小于等于 max,小数部分保留 dmin 到 dmax 位。

6 .'name | 1': boolean   随机生成一个布尔值,值为 true 的概率是 1/2,值为 false 的概率同样是 1/2

7.属性值是对象:var obj={'host':'www.baidu','port':'12345','node':'selector'}

             7-1.'name | count': object  从属性值 object 中随机选取 count个属性。  

             7-2.'name | min-max': object  从属性值 object 中随机选取 min 到 max 个属性
8.属性值是数组:var array=['momo','yanzi','ziwei']

       8-1.'name|1': array   从属性值 array 中随机选取 1 个元素,作为最终值

       8-2.'name|+1': array   从属性值 array 中顺序选取 1 个元素,作为最终值。
       8-3.'name|count': array   通过重复属性值 array 生成一个新数组,重复次数为 count。
       8-4.'name|min-max': array   通过重复属性值 array 生成一个新数组,重复次数大于等于 min,小于等于 max

如何实现数据 增 删 改 查 的模拟数据接口

 

 

       在此我就列举一个删除的例子

[code]/*模拟删除数据的方式*/
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)
}
})

详情可参考https://github.com/nuysoft/Mock/wiki/Mock.mock()

 

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: