微信小程序 + mock.js 实现后台模拟及调试 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

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

发表时间:2021-4-22

发布人:葵宇科技

浏览次数:90

一、创建小程序项目

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(datahttps://www.wxapp-union.com/= '', 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='https://www.wxapp-union.com/{{item.img}}'></image>
</block>
复制代码

页面显示

相关案例查看更多