用到的知识点
1、wx.request,https://developers.weixin.qq.com/miniprogram/dev/api/network/request/wx.request.html
2、Promise,Promise 对象有以下两个特点:对象的状态不受外界影响。Promise 对象代表一个异步操作,有三种状态:pending: 初始状态,不是成功或失败状态。fulfilled: 意味着操作成功完成。rejected: 意味着操作失败。
下面是示例源码
WxRequest(method,url,data){
let _this = this;
let http = _this.globalData.http +url;
let token = wx.getStorageSync("token");
return new Promise(function(resolve, reject){
wx.showLoading({
title: '加载中...',
})
wx.request({
url: http,
method:method,
data:data,
header:{
'content-type': method == 'GET' ? 'application/json' : 'application/x-www-form-urlencoded',
'Accept': 'application/json',
'token':token
},
success:function(res){
wx.hideLoading();
if(res.statusCode == '200'){
resolve(res.data);
}else{
reject(res);
}
},
fail:function(err){
reject(err);
}
})
})
}
使用
引入路径.WxRequest(method,url,data).then(function(res){
成功返回
}).catch(function(){
失败返回
});
使用说明
WxRequest(),可以放在小程序启动页app.js里面。也可以重新生成一个js页面。在需要引用的页面引入,如果是放在app.js里面的,在其他页面引入为 const app = getApp();,使用时 app.WxRequest(method,url,data); 如果是一个新的js页面。则按照小程序的引入规则引入。使用方法是差不多的。
网友评论