ウィジェットajaxパッケージ
1596 ワード
前言
微信ウィジェットはネットワークリクエスト方法を提供しているが、使い勝手が悪く、自分でパッケージした.
パッケージングソース
参照
最適化のヒント
以上は簡易版にすぎず,パラメータ部分を最適化し,1つのオブジェクトの字面量を入力した後,パラメータをデフォルト処理することができる.
微信ウィジェットはネットワークリクエスト方法を提供しているが、使い勝手が悪く、自分でパッケージした.
パッケージングソース
// API
import API from './_api.js'
export default {
/**
* fetch
* :
* url:
* data:
* method:
* success:
* fail:
*/
fetch (url, data, method, success, fail) {
// (loading )
const accessToken = wx.getStorageSync('userInfo');
wx.request({
url: url,
data: data,
header: {
'content-type': 'application/json; charset=UTF-8',
'Authorization': accessToken.sessionid // token
},
method: method,
success: function (res) {
// loading
success(res);
},
fail: function (res) {
// loading
//
wx.showToast({
title: ' ',
image: '../assets/img/info.png',
duration: 1500
})
fail(res);
}
})
}
}
参照
import API from '../../utils/_api.js'
import HTTP from '../../utils/_http.js'
let that = this;
HTTP.fetch(API.baseUrl + API.xxx, {
}, 'GET',
function (res) {
// success
that.setData({
//
})
}, function (res) {
// fail
})
最適化のヒント
以上は簡易版にすぎず,パラメータ部分を最適化し,1つのオブジェクトの字面量を入力した後,パラメータをデフォルト処理することができる.
fetch (options) {
//
options.url = options.url || '';
options.data = options.data || {};
...
}