A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 AngularBaby 于 2018-4-19 16:45 编辑


官网地址

Mock.js 是一款前端开发中拦截Ajax请求再生成随机数据响应的工具,可以用来模拟服务器响应。
优点是非常简单方便,无侵入性, 基本覆盖常用的接口数据类型。


前后端分离:让前端攻城师独立于后端进行开发
增加单元测试的真实性:符合直觉的接口
开发无侵入:不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据
用法简单:通过随机数据,模拟各种场景
数据类型丰富:支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等
方便扩展:支持支持扩展更多数据类型,支持自定义函数和正则。

1. 安装
使用npm安装:
[Shell] 纯文本查看 复制代码
npm install mockjs

或者直接引入:
[HTML] 纯文本查看 复制代码
<script src="http://mockjs.com/dist/mock.js"></script>


2. 模拟数据
基本语法:
[JavaScript] 纯文本查看 复制代码
Mock.mock( rurl?, rtype?, template|function( options ) );
// rurl:可选。 表示需要拦截的 URL,可以是 URL 字符串或 URL 正则。
// rtype:可选。 表示需要拦截的 Ajax 请求类型。例如 GET、POST、PUT、DELETE 等。
// template:可选。 表示数据模板,可以是对象或字符串。例如 { 'data|1-10':[{}] }、'@EMAIL'。 
// function(options):可选。 表示用于生成响应数据的函数。[/color]

举个例子:
[JavaScript] 纯文本查看 复制代码
var data = Mock.mock('http://test.com', { // 需要拦截的url
          'list|10': [{
               'id|+1': 1, // id属性值自动加 1,初始值为1
                'name': '@cname', // 中文姓名
               'age|18-60': 1, // 18-60内随机整数,1只是确定类型
                'birthday': '@date("yyyy-MM-dd")', // 日期
                'city': '@city(true)', // 中国城市
                'gender|1': true, // 布尔值

        })

更多参数配置

3. 发送请求
[JavaScript] 纯文本查看 复制代码
$.ajax({
            type: "get", // 请求方式
            url: 'http://test.com', // 请求地址
            dataType: 'json', // 数据格式
            success: function (res) { // 成功回调
                console.log(res);
            }
        })


4. 查看结果

demo详见附件







mockjs.zip

32.26 KB, 下载次数: 49

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马