utils目录
①下载mockjs(地址)放置utils目录中
②新建api.js :配置模拟数据以及后台接口,通过DEBUG=ture; //切换数据接口
配置如下:
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 }
③在小程序访问数据的页面js中 定义变量注册,使用
如下:
//index.js //获取应用实例 var app = getApp() var API = require(\'../../utils/api.js\') Page({ data: { goods:[] }, onLoad: function () { var that = this; // 使用 Mock配置的api接口 API.ajax(\'\', function (res) { that.setData({ goods:res.data }) }); console.log(this.data.goods) } })
那么,我们就可以在页面中使用数据了
在api.js中,定义模拟数据的属性如图(可以再依mockjs文档的github地址定义其他我们所需要的数据格式):
另外,也可将数据提取出,根据api中传入的请求类型datatype,返回对应的数据
根据id返回res的改造版:
mock文档手册:http://mockjs.com/0.1/
参考资料:https://www.cnblogs.com/xzma/p/7591090.html
https://www.jianshu.com/p/9dbcfbe6130f