奔三路 - 你30岁前的学习路!

奔三路学习网

当前位置: 主页 > 大前端知识 >

mock.js一个前后端分离的数据模拟框架

时间:2017-10-31 16:13来源:未知 作者:admin
mock.js的特点: mock.js超出了我的意料。 基于 数据模板 生成模拟数据。 基于 HTML模板 生成模拟数据。 拦截并模拟 ajax 请求。 是的,mock.js只做上述的几件事,但做的足够出色。 解决的
mock.js的特点:
  • mock.js超出了我的意料。
    • 基于 数据模板 生成模拟数据。
    • 基于 HTML模板 生成模拟数据。
    • 拦截并模拟 ajax 请求。
  • 是的,mock.js只做上述的几件事,但做的足够出色。

解决的问题

开发时,后端还没完成数据输出,前端只好写静态模拟数据。

  • 数据太长了,将数据写在js文件里,完成后挨个改url。
  • 某些逻辑复杂的代码,加入或去除模拟数据时得小心翼翼。
  • 想要尽可能还原真实的数据,要么编写更多代码,要么手动修改模拟数据。
  • 特殊的格式,例如IP,随机数,图片,地址,需要去收集。
  • 超烂的破网速…

以上都不再是问题

接下来体验 拦截ajax请求并返回模拟数据

步骤1 - 安装


    <script type="text/javascript" src="http://mockjs.com/dist/mock.js"></script>

步骤2 - 配置模拟数据

Mock.mock('http://g.cn', {
    'name'	   : '[@name](/user/name)()',
    'age|1-100': 100,
    'color'	   : '[@color](/user/color)'
});

步骤3 - 发送ajax请求(jquery版)

$.ajax({
    url: 'http://g.cn',
}).done(function(data, status, xhr){
    console.log(
        JSON.stringify(data, null, 4)
    )    
})

步骤4 - 查看响应的结果

// 结果1
{
    "name": "Elizabeth Hall",
    "age": 91,
    "color": "#0e64ea"
}

// 结果2
{
    "name": "Michael Taylor",
    "age": 61,
    "color": "#081086"
}

// 结果N ..
(责任编辑:admin)
顶一下
(0)
0%
踩一下
(4)
100%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
发布者资料
史密斯 查看详细资料 发送留言 加为好友 用户等级:注册会员 注册时间:2017-11-24 11:11 最后登录:2018-07-15 11:07
栏目列表
推荐内容

关注奔三路小程序,方便你我他