微信小程序对wx.request函数进行封装操作的代码示例
2018-03-08 20:26
1161 查看
//app.js App({ onLaunch: function () { }, networkEngine: require('utils/network.js') })
// /utils/network.js
module.exports ={
send:function(){
console.log(arguments);
var that = this;
var pack = {};
if(arguments.length == 1){
pack = arguments[0];
}else if(arguments.length == 3){
pack.url = arguments[0];
pack.data = arguments[1];
pack.complete = arguments[2];
} else{
throw new Error('arguments_error');
}
var newPack = {};
newPack = pack.data;
var url = '';
if(pack.url.indexOf('/') === 0){
url = pack.url.substr(1, pack.url.length - 1);
}else{
url = pack.url;
}
wx.request({
url: "https://xxxxx" + '/' + url,
data: newPack,
header:{
'Content-Type': 'application/json'
},
method: 'POST',
success:function(res){
console.log('res:', res);
pack.complete(res.data.code, res.data.msg, res.data.data, pack.data);
},
fail:function(res){
pack.complete(-1, 'wechat_error', res, pack.data);
},
complete: function (res) {
}
})
}
}
//index.js //获取应用实例 const app = getApp() //import ListLodingState from '../list_loading_state/list_loading_state.js'; Page({ data: { isVip: 50 }, onLoad: function () { let instance = this; instance.componentInit(); instance.initData(); }, componentInit:function(){ let instance = this; // instance.listLoadingState = new ListLoadingState(instance); }, initData: function(){ let self = this; self.loadData(); }, loadData: function(){ let self = this; let instance = this; let cmd = "isVip.php"; let paramter = { user_id: 61152144 } let successFn = function(data, app, instance){ console.log("1st request"); } let errorFn = function(){ } self._ajax(app, instance, cmd, paramter, successFn, errorFn); }, _ajax: function(app, instance, cmd, paramter, successFn, errorFn){ let appTemp = app; let instanceTemp = instance; app.networkEngine.send(cmd, paramter, function(code, msg, data){ if(code == 0){ successFn(data, appTemp, instanceTemp); instance.setData({ pageLoading: true, show_network_error: false, }); } else { errorFn('微信调用networkEngine出现错误'); instance.setData({ pageLoading: true, show_network_error: true, }); } }) } })
相关文章推荐
- 微信小程序 wx.request 的封装
- 微信小程序函数中有wx.request 返回值为undefined 因为request是异步请求
- 微信小程序 wx.request方法的异步封装实例详解
- 详解微信小程序的 request 封装示例
- 微信小程序封装请求方法wx.request(OBJECT)
- 微信小程序 wx.request(object) API详解及实例代码
- 微信小程序wx.request接口封装
- 微信小程序 wx.request wepy 简单封装
- 微信小程序 request接口的封装实例代码
- 使用C#调用存储过程,用函数合理组织代码,使程序更加的清晰(示例)
- Python常见文件操作的函数示例代码
- 微信小程序开发之常见问题 不在以下合法域名列表中 wx.request合法域名配置
- 微信小程序wx.request请求服务器json数据并渲染到页面
- [微信小程序]组件化开发,以一个自定义模块框组件当做示例(附完整示例代码和效果图)
- 微信小程序解决下拉刷新和上拉加载时wx.request多次加载问题
- 微信小程序获取循环元素id以及wx.login登录操作
- 小程序wx.request请求接口封装
- Arduino - 串口操作函数与示例代码大全
- 微信小程序:request反馈函数写错 不报错,得不到返回值