赞
踩
全局封装 ajax ,方便添加默认参数 ,判断本地存储信息 ,登录情况
// 基准路径
const baseUrl = ‘http://www.xxx.com/xxxx/methods/’
//获取countryCode 和 exchange_rate
function getExrate(url, method, header={}) {
wx.request({
url: baseUrl + url, method: "GET", data:{}, header, success: res => { if(res.statusCode == 200){ //设置countryCode 和 exchange_rate let countryCode = res.data.data.countryCode; let exchange_rate = res.data.data.exchange_rate; wx.setStorage({ key: "countryCode", data: countryCode }) wx.setStorage({ key: "exchange_rate", data: exchange_rate }) } wx.hideLoading() }, fail: err => { console.log(err); }
})
}
// 1.0 返回一个 promise 对象
function request(url, method = ‘GET’, data = {}, header = {}) {
//获取本地存储信息
try {
const res = wx.getStorageInfoSync() //已经登录 添加user_id if (res.hhauseUser){ let hhauseUser = JSON.parse(res.hhauseUser) data.user_id = hhauseUser.user_id } //添加来源 data.source = 'WeChat' if (!res.countryCode || !res.exchange_rate){ getExrate('system.getExrate', method) } //添加地区编码 data.countryCode = res.countryCode || "CN" //添加汇率 data.exchange_rate = res.exchange_rate || "7.0406" //添加版本 data.v = '1.0'
} catch (e) {
console.log(e);
}
return new Promise((resolve, reject) => {
wx.showLoading({ title: '加载中' }) // 2.0 完成逻辑处理 wx.request({ url: url, method: method, data: data, header, success: res => { resolve(res) wx.hideLoading() }, fail: err => { reject(err) } })
})
}
// 封装一个单独的 get 方法
request.get = function (url, data = {}) {
return request(baseUrl + url, ‘GET’, data)
}
// 封装一个单独的 post 方法
request.post = function (url, data = {}) {
return request(baseUrl + url, ‘POST’, data)
}
// 3.0 暴露给外界
export default request
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。