看了之前自己写的代码,有种想杀了自己的冲动。主要问题是,小程序那边,我之前没有封装我的get,post请求导致了,每个页面发送请求的时候,多写了请求头,请求方法,每个页面都有很多重复的代码,而且加载动画每个页面都是。我封装了后的代码如下。
1.get请求
function getHttpRequest(url,params,doSuccess){
//开启加载画面
wx.showToast({
title: '加载中',
icon: 'loading',
duration: 100000
})
wx.request({
url: uriPrefix+url,
data: params,
method:"GET",
header:{
"Content-Type":"application/x-www-form-urlencoded"
},
success:function(res){
wx.hideToast();
doSuccess(res.data);
}
})
}
2.post请求和get请求类型。只需要将Header的Content-type修改成 application/json就好了。
3.调用请求的时候。第一个参数为url,第二个参数为json格式的参数,第三个为成功的回调函数。
4.如需修改当前页面的data里面的数据,可以在成功的回调函数中当前页面的对象赋值给一个零时变量,如var that = this,再用
that.setData({"key":value}) 的方式将后台参数渲染到当前的页面。