美文网首页JAVASCRIPTWeb前端之路技术干货
前端数据与后台分离,使用mockjs模拟后台返回json数据

前端数据与后台分离,使用mockjs模拟后台返回json数据

作者: 幺加幺 | 来源:发表于2017-02-17 16:55 被阅读4495次

    如何不依赖后端返回的JSON数据,比后台早一步下班

    使用mockjs ,造json数据
    例子:
    效果:

    Paste_Image.png

    操作,点击mockjs 随机产生json数据。
    代码:

    <!DOCTYPE html>
    <html>
    
    <head>
        <title></title>
        <meta charset="utf-8">
    </head>
    
    <body>
        <div>
            <h1 id="mockjs">mockjs</h1>
        </div>
        <script src="http://cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
        <script src="http://mockjs.com/dist/mock.js"></script>
        <script type="text/javascript">
        //调用mock方法模拟数据
        Mock.mock(
            'http://mockjs', {
                "userName": '@name', //模拟名称
                "age|1-100": 100, //模拟年龄(1-100)
                "color": "@color", //模拟色值
                "date": "@date('yyyy-MM-dd')", //模拟时间
                "url": "@url()", //模拟url
                "content": "@cparagraph()" //模拟文本
            }
        );
    
        //ajax请求
        $("#mockjs").click(function() {
            $.ajax({
                url: "http://mockjs", //请求的url地址
                dataType: "json", //返回格式为json
                async: true, //请求是否异步,默认为异步,这也是ajax重要特性
                data: {}, //参数值
                type: "GET", //请求方式
                beforeSend: function() {
                    //请求前的处理
                    console.log('start');
                },
                success: function(req) {
                    //请求成功时处理
                    console.log(req);
                },
                complete: function() {
                    //请求完成的处理
                    console.log('end');
                },
                error: function(err) {
                    //请求出错处理
                    console.log(err);
                }
            });
        });
        </script>
    </body>
    
    </html>
    
    

    如果想请求多一个api呢?
    只需要建多一个对象

    Mock.mock(
            'http://getJSON', {
                "userName": '@name', //模拟名称
                "age|1-100": 100, //模拟年龄(1-100)
            }
        );
    

    调用方法同上:

        $("#getJSON").click(function() {
            $.ajax({
                url: "http://getJSON", //请求的url地址
                dataType: "json", //返回格式为json
                async: true, //请求是否异步,默认为异步,这也是ajax重要特性
                data: {}, //参数值
                type: "GET", //请求方式
                beforeSend: function() {
                    //请求前的处理
                    console.log('start');
                },
                success: function(req) {
                    //请求成功时处理
                    console.log(req);
                },
                complete: function() {
                    //请求完成的处理
                    console.log('end');
                },
                error: function(err) {
                    //请求出错处理
                    console.log(err);
                }
            });
        });
    
    

    相关文章

      网友评论

        本文标题:前端数据与后台分离,使用mockjs模拟后台返回json数据

        本文链接:https://www.haomeiwen.com/subject/gpsnmttx.html