第一步这个是request.js页面
// 引入env中的url
const { baseUrl } = require('./env.js').prod; //在这里添加我们的专业域名 module.exports = { /** * 二次封装wx.request * url:请求的接口地址 * method:请求方式 GET,POST.... * data:要传递的参数 *isSubDomain:表示是否添加二级子域名 true代表添加, false代表不添加 */ request: (url, method, data) => { //这里使用ES6的写法拼接的字符串 let _url = `${baseUrl}/${url}`; let token = wx.getStorageSync('token'); return new Promise((resolve, reject) => { wx.request({ url: _url, data: data, method: method, header: { 'content-type': 'application/json', 'Authorization': `Bearer ${token}` }, success: (res) => { if (res.data.code == '401') { wx.showModal({ title: '提示', content: '你的登录状态已经过期了,请重新', showCancel: false, // 是否显示取消按钮 confirmText: '确定', // 确定按钮的文字 success(res) { wx.login({ success: function (res) { if (res.code) { let cossde = res.code; wx.request({ url: `${baseUrl}/wxLogin`, data: { code: cossde }, header: { 'content-type': 'application/json' }, method: 'POST', success: function (res) { wx.setStorageSync('token', res.data.token); }, fail: function (error) { console.log(error); } }); } else { console.log('登录失败!' + res.errMsg); } }, fail: function (err) { console.log('登录失败!' + err.errMsg); } }); } }); } resolve(res); }, fail() { reject('接口有误,请检查') } }); }); }, }
第二步这个是env.js页面
//这里使用的接口呢都是自己模拟的,可以根据自己的需求进行添加 module.exports = { prod: { baseUrl: 'https://www.ohbiu.cn:8081' //线上 } }
第三步这个是api.js页面
//引入封装的reuest请求 const { request } = require('./request.js') //基于业务封装的接口 module.exports = { //示例 listStoreMessages: (storeId) => { return request(`messages/listStoreMessages`, 'GET', { storeId:storeId }, false) }, }
第四步就是在其他的页面中使用了
const { baseUrl } = require('../../API/env').prod; const { listStoreMessages } = require('../../API/api.js');
第五步在data中声明对象来接收值
data:{ messages: {}//获取消息里的数据 }
第六步就能拿到数据了
// 全部已读弹窗 yidu() { let storeId = wx.getStorageSync('addressId'); wx.getStorageSync是本地缓存 listStoreMessages(storeId).then((res) => { console.log(res) this.setData({ messages: res.data.data.data, }) }) },