WeChatウィジェットs 6のクラスは、パッケージを要求します.
2147 ワード
promiseベースのプログラムコードapiをパッケージ化します.
新しいpromise.jsを作って、es 6種類の包装の方法を使います.
新しいpromise.jsを作って、es 6種類の包装の方法を使います.
export class request{
constructor(url,data) {
this.url = url
this.data = data
}
request(method){
return new Promise((resolve,reject)=>{
uni.request({
url: this.url,
method: method,
data: this.data,
header:uni.getStorageSync('token')?{
token:uni.getStorageSync('token').token
}:{},
success: res => {
console.log(res)
if((res.data&&res.data.code == 0)||(res.data&&res.data.shopCode == 0)){
resolve(res)
} else {
uni.showModal({
content: res.data.msg?res.data.msg:res.data.result.error_msg,
showCancel: false,
confirmText: ' '
});
}
uni.hideLoading();
},
fail: (err) => {
resolve(undefined)
uni.hideLoading();
uni.showToast({
title:' ',
icon:'none',
duration:2000
})
}
});
})
}
post(){
return this.request("POST")
}
get(){
return this.request("GET")
}
}
新しいrequest.jsimport {request} from './promise.js'
export const post=({url,data})=>{
return new request(url,data).post()
}
export const get=({url,data})=>{
return new request(url,data).get()
}
新規アプリ.jsを作成して、すべての要求をここに書いてください.import {
post,
get
} from './request'
const BASE_URL = 'http://192.168.2.117:8081/hefashop-api/app'
//
export const GET_COLLECT_GOODS = (data) =>{
let url = BASE_URL + `/collect/list`
return get({url,data})
}
呼び出し方式test.wxmlimport {GET_COLLECT_GOODS} from '../../api/api.js'
Page({
data:{}
onLoad:function(options){
wx.showLoading({
title:''
})
let that =this
let data={
userId:wx.getStorageSync('unionId'),
page:that.data.page,
limit:that.data.limit
}
GET_COLLECT_GOODS(data)
.then((res)=>{
console.log(res,' ')
})
}
})