uniapp封装request方法及调用
创建common/js/request.js
export default { doRequest(method, url, data) { // 如果data为空 if (!data) var data = [] var arr = [] arr.push(data) //我司项目需要验证state和openid,我登录后存在本地 var state = uni.getStorageSync('state'); var openid = uni.getStorageSync('openid'); arr[0].state = state; arr[0].openid = openid; // 接口需要验证的可以将json转成数组添加值再调用 // 不需要的可以直接data:data return new Promise((resolve, reject) => { uni.request({ method: method, url: url, data: arr[0], // data:data header: { 'content-type': 'application/x-www-form-urlencoded' }, success: function(result) { // resolve调用后,即可传递到调用方使用then或者async+await同步方式进行处理逻辑 resolve(result) }, fail: function(e) { console.log('error in...') // reject调用后,即可传递到调用方使用catch或者async+await同步方式进行处理逻辑 reject(e) }, }) }) }, }
调用:
that.$req.doRequest().then(res => { // 获得数据 console.log(res); that.infoList = res.data.data; setTimeout(function() { that.loadingActive = false; }, 200); }) .catch(res => { console.log(res); });
全局注册:
import Req from 'common/js/request.js' Vue.prototype.$req = Req;