微信小程序 + mock.js 实现后台模拟及调试

Posted https://blog.zlevai.com

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序 + mock.js 实现后台模拟及调试相关的知识,希望对你有一定的参考价值。

一、创建小程序项目

mock.js 从 https://github.com/nuysoft/Mock/blob/refactoring/dist/mock.js 下载

api.js:配置模拟数据和后台接口数据,通过 DEBUG = true;//切换数据入口

let API_HOST = "http://xxx.com/xxx";
let DEBUG = true;//切换数据入口
var Mock = require(\'mock.js\')
function ajax(data = \'\', fn, method = "get", header = {}) {
    if (!DEBUG) {
        wx.request({
            url: config.API_HOST + data,
            method: method ? method : \'get\',
            data: {},
            header: header ? header : { "Content-Type": "application/json" },
            success: function (res) {
                fn(res);
            }
        });
    } else {
        // 模拟数据
        var res = Mock.mock({
            \'error_code\': \'\',
            \'error_msg\': \'\',
            \'data|10\': [{
                \'id|+1\': 1,
                \'img\': "@image(\'200x100\', \'#4A7BF7\',\'#fff\',\'pic\')",
                \'title\': \'@ctitle(3,8)\',
                \'city\': "@county(true)",
                \'stock_num\': \'@integer(0,100)\',//库存数量  
                \'marketing_start\': \'@datetime()\',
                \'marketing_stop\': \'@now()\',
                \'price\': \'@integer(100,2000)\',//现价,单位:分  
                \'original_price\': \'@integer(100,3000)\'
            }]  
        })
        // 输出结果
       // console.log(JSON.stringify(res, null, 2))
        fn(res);
    }
}
module.exports = {
    ajax: ajax
}

index.js页面

//index.js
//获取应用实例
var app = getApp()
var API = require(\'../../utils/api.js\')
Page({
    data: {
    },
    onLoad: function () {
        console.log(\'onLoad\')
        var that = this
        // 使用 Mock
        API.ajax(\'\', function (res) {
            //这里既可以获取模拟的res
            console.log(res)
            that.setData({
                list:res.data
            })
        });

        console.log(this.data.list)
    }
})

index.wxml

<!--index.wxml-->
<block wx:for="{{list}}" wx:key="name">
  <view>{{item.title}}</view>
  <text>{{item.city}}</text>
  <view>
    <text>{{item.marketing_start}}</text>
  </view>
  <image src=\'{{item.img}}\'></image>
</block>

页面显示

 

 

 

以上是关于微信小程序 + mock.js 实现后台模拟及调试的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序开发调试工具

微信小程序真机调试时后台是本地服务器,显示“未能连接到服务器”

使用RAP2和Mock.JS实现Web API接口的数据模拟和测试

微信小程序怎么设置文本换行(从后台拿的数据)

单词记忆微信小程序的设计与实现毕业论文+小程序前后台(JavaSSM)源码及数据库

微信小程序云开发入门实践