亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 課堂 > 小程序 > 正文

微信小程序HTTP接口請求封裝的實現

2020-03-21 16:01:24
字體:
來源:轉載
供稿:網友

最近在學習小程序的編寫,需要調用后端接口,經常要用到wx.request方法,所以就自己封裝了一下,簡化一下代碼,如果能給大家提供幫助更好,我的項目后端是使用的Java SSM框架,wx.request的URL就是后端提供的接口。在封裝的時候我在網上看了很多篇博客,90%以上的全都是直接在success回調函數中直接打印返回值console.log(res.data)這個當然是沒有問題的,但是我們都知道微信小程序的數據是實現數據綁定的,這一點和Vue框架很像,而在Vue框架的JS文件中我們可以通過

function loginSuccess(data){ //成功回調函數 //具體數據處理}

這種方式定義回調方法,同時通過new的Vue名字.data參數名對data里面的參數值進行修改,正因為有了這種習慣后,所以我在小程序中使用這種方式剛開始一直報錯,搞了好久才搞懂,現在來看一下我的小程序HTTP請求方法封裝及使用:

1.方法封裝(新建文件夾util,工具文件,在文件夾下創建request.js文件,用于對方法封裝)

request.js:

var app = getApp();//項目URL相同部分,減輕代碼量,同時方便項目遷移//這里因為我是本地調試,所以host不規范,實際上應該是你備案的域名信息var host = 'http://localhost:8081/demo/';/** * POST請求, * URL:接口 * postData:參數,json類型 * doSuccess:成功的回調函數 * doFail:失敗的回調函數 */function request(url, postData, doSuccess, doFail) { wx.request({  //項目的真正接口,通過字符串拼接方式實現  url: host + url,  header: {   "content-type": "application/json;charset=UTF-8"  },  data: postData,  method: 'POST',  success: function (res) {   //參數值為res.data,直接將返回的數據傳入   doSuccess(res.data);  },  fail: function () {   doFail();  }, })}//GET請求,不需傳參,直接URL調用,function getData(url, doSuccess, doFail) { wx.request({  url: host + url,  header: {   "content-type": "application/json;charset=UTF-8"  },  method: 'GET',  success: function (res) {   doSuccess(res.data);  },  fail: function () {   doFail();  }, })}/** * module.exports用來導出代碼 * js文件中通過var call = require("../util/request.js") 加載 * 在引入引入文件的時候" "里面的內容通過../../../這種類型,小程序的編譯器會自動提示,因為你可能 * 項目目錄不止一級,不同的js文件對應的工具類的位置不一樣 */module.exports.request = request;module.exports.getData = getData;

2.page里面隨便一個創建一個文件夾,創建四種文件,在js里面加入

//引入代碼var call = require("../util/request.js")Page({ data: {  pictureList: [], },  onLoad: function () {  var that = this;  //調用封裝的方法,為了方便我直接在頁面加載的時候執行這個方法  call.getData('lunbo.do', this.shuffleSuc, this.fail);  // 無用,前面忘記注釋,抱歉  // this.loadMsgData(that); }, shuffleSuc: function (data) {  var that = this;  that.setData({   pictureList: data.rows  })  //我后面測試了一下,直接this.setData也可以,但是因為我在沒有使用封裝方法的時候  //this.setData報過錯,不能直接用this,所以我在賦值的時候一般都會加上var that = this;  //這句話算是一個不是習慣的習慣 }, fail: function () {  console.log("失敗") },})

將回調函數寫在page里面,在調用封裝方法的時候通過this.方法名調用,這樣就能確保that.setData方法有效,如果是寫在外面的function方法小程序編譯器不會報錯,但是在wxml中bindtap無效,我也沒深究,同時在call.getData方法中調用的時候雖然能夠進入該方法,但是賦值是無效的,所以我不建議用這種方式:

function shuffleSuc(data) { var that = this; that.setData({  pictureList: data.rows })}

當然,如果哪位有新的見解歡迎留言

3. 運行之后通過小程序的控制臺AppData可以打印data里面的值,同時也可以根據需要在頁面中顯示

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产玖玖精品视频| 久久亚洲电影天堂| 91久久久久久国产精品| 成人高清视频观看www| 亚洲大胆人体在线| 日韩高清电影好看的电视剧电影| 人人澡人人澡人人看欧美| 一区二区三区日韩在线| 亚洲最大福利视频网| 国内免费久久久久久久久久久| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲精品久久久久中文字幕二区| 亚洲国产精品成人一区二区| 亚洲成人av片在线观看| 国产一区二区三区18| 久久国内精品一国内精品| 久久精品亚洲一区| 亚洲精品自拍视频| 亚洲国产日韩欧美在线动漫| 午夜精品美女自拍福到在线| 日韩电影在线观看免费| 国产精品久久久久免费a∨| 亚洲欧美国内爽妇网| 成人久久18免费网站图片| 欧美激情网站在线观看| 最近2019中文免费高清视频观看www99| 欧美日韩亚洲91| 国产精品视频成人| 欧美老女人性生活| 狠狠色噜噜狠狠狠狠97| 日韩免费观看视频| 超碰日本道色综合久久综合| 亚洲日本成人女熟在线观看| 亚洲精品按摩视频| 81精品国产乱码久久久久久| 国产精品第100页| 国产91精品久久久久久| 九九热这里只有在线精品视| 久久久久久成人| 国产日韩在线亚洲字幕中文| 日韩福利伦理影院免费| 中文字幕一精品亚洲无线一区| 狠狠躁夜夜躁久久躁别揉| 国产成人精品av在线| 久久99精品视频一区97| 日韩精品电影网| 亚洲成人久久久久| 欧美日韩国内自拍| 亚洲精品国产精品乱码不99按摩| 国产成人极品视频| 中文字幕亚洲一区| 国产一区二区三区视频在线观看| 最近的2019中文字幕免费一页| 欧美精品久久久久久久免费观看| 最近2019年日本中文免费字幕| 欧美精品videos另类日本| 亚洲美女av网站| 国产一区二区三区在线播放免费观看| 精品性高朝久久久久久久| 精品亚洲一区二区三区| 51视频国产精品一区二区| 欧美激情区在线播放| 久久6免费高清热精品| 国内精品免费午夜毛片| 欧美大全免费观看电视剧大泉洋| 日韩欧美中文字幕在线观看| 成人免费黄色网| 91成人性视频| 日韩在线观看视频免费| 久久综合色影院| 亚洲精品一区在线观看香蕉| 久久视频在线免费观看| 国产成人精品在线视频| 欧美激情一级精品国产| 91麻豆国产语对白在线观看| 欧洲成人午夜免费大片| 国产精品一区二区久久久| 中文字幕精品网| 国产亚洲欧美另类中文| 欧美寡妇偷汉性猛交| 精品国内自产拍在线观看| 91精品国产91久久久久| 久久精品一本久久99精品| 欧美激情欧美激情在线五月| 亚洲福利视频在线| 91九色国产视频| 成人国产精品日本在线| 麻豆国产va免费精品高清在线| 精品国偷自产在线视频| 欧美日韩国产在线看| 91精品在线观看视频| 亚洲精品欧美一区二区三区| 91久久久久久久久| 欧美日韩在线免费| 国产精品精品视频| 欧美中文字幕精品| 久久久亚洲福利精品午夜| 国产91精品久久久久久| 色综合色综合久久综合频道88| 欧美激情综合色| 色老头一区二区三区| 亚洲国产精品va| 国内精品久久影院| 久久久久久久国产| 免费不卡欧美自拍视频| 日韩成人中文电影| 欧美日韩亚洲国产一区| 欧美成人免费一级人片100| 中文字幕亚洲精品| 日韩av网址在线观看| 日韩免费精品视频| 一区二区亚洲精品国产| 九色精品美女在线| 欧美日韩亚洲91| 亚洲在线免费视频| 亚洲社区在线观看| 色哟哟网站入口亚洲精品| 亚洲在线一区二区| 欧美另类极品videosbestfree| 国产精品欧美激情| 午夜精品久久久久久久男人的天堂| 国产主播欧美精品| 国产剧情久久久久久| 亚洲经典中文字幕| 久久91亚洲精品中文字幕| 亚洲已满18点击进入在线看片| 日韩高清不卡av| 国产亚洲欧洲高清一区| 青青草原成人在线视频| 午夜精品一区二区三区在线视| 日韩中文字幕网址| 精品无人区太爽高潮在线播放| 亚洲成人av在线| 亚洲精品视频网上网址在线观看| 日韩激情av在线播放| 欧美日韩国产综合视频在线观看中文| 亚洲精品aⅴ中文字幕乱码| 日韩欧美在线网址| 亚洲偷欧美偷国内偷| 国产精品久久久一区| 国产一区二区香蕉| 国产精品福利观看| 成人写真福利网| 91视频免费网站| 日韩小视频在线观看| 国产精品国产自产拍高清av水多| 欧美视频在线视频| 国产欧美一区二区| 有码中文亚洲精品| 国产欧美日韩91| 欧美老女人性视频| 欧美在线欧美在线| 亚洲色图13p| 日韩精品免费观看| 国产日韩欧美在线播放| 欧美香蕉大胸在线视频观看| www国产精品com| 亚洲国产精彩中文乱码av在线播放| 91影院在线免费观看视频| 午夜精品久久久久久99热| 精品女同一区二区三区在线播放| 久久影视免费观看| 亚洲精品美女在线观看播放| 国产精品视频自拍|