<strike id="g3zqm"></strike>

      <cite id="g3zqm"></cite>

        <tr id="g3zqm"><center id="g3zqm"></center></tr>
        <pre id="g3zqm"><sup id="g3zqm"></sup></pre>
        <li id="g3zqm"></li>
      1. 少妇高潮激情一区二区三,免费av深夜在线观看,亚洲狼人久久伊人久久伊,久久精品人人做人人爽电影蜜月,黄色特级片一区二区三区,欧美日韩在线亚洲二区综二,极品少妇无套内射视频,日本极品少妇videossexhd

        uni-app uni.request接口封裝

        2020-4-9    seo達人

        uni-app uni.request接口封裝

        今天在做uni-app項目時,發現在uni-app中 調取后臺接口需要大量的重復編輯,就在想能不能封裝一個如同Vue項目中的this.$axios.get(url,data).then();格式,這樣就減少了很多代碼重復!!

        封裝為如同this.$axios.get(url,data).then();格式

        第一步、

        我們先在index首頁中的組件部分,創建一個js文件;





        第二步、

        我們在uni-app的入口文件中引入request.js文件;

        在入口文件中掛載到uni-app實例上;





        第三步、

        開始接口封裝:

        (以下為js文件代碼)



        //先把接口暴露出去

        export default{

        //我們先定一個uni-app方法 以便于以下操作使用uni-app調取接口時便利

        request(options){

        ///我們使用Promise方法來實現調用接口時后面多個.then()的方法

        //只有Promise能實現如同$axios后面連續多個.then()的方法

        return new Promise((reslove,reject)=>{

        uni.request({

        ...options,

        success:res=>{

        //判斷我們在使用封裝的自定義時第三個參數是否為native

        //當native為true時 我們返回原數據

        if(options.native){

        reslove(res)

        }

        //當native為false時 我們直接返回data中的數據

        if(res.statusCode === 200){

        reslove(res.data)

        }else{

        //加入接口參數錯誤或接口地址錯誤時 我們返回原錯誤提示

        reject(res)

        }

        }

        })

        })

        },

        //在方法中 第二個參數和第三個參數用ES6新語法來添加默認值

        //接口調取get方法

        get(url,data={},options={}){

        //我們把傳過來的參數賦給options,這樣我們在使用uni-app

        //this.request()方法時 傳遞一個參數就可以

        options.url = url;

        options.data = data;

        options.method = 'get';

        //調用上面自己定義的this.request()方法傳遞參數

        return this.request(options)

        },

        //接口調取post方法

        post(url,data={},options={}){

        options.url = url;

        options.data = data;

        options.method = 'post';

        return this.request(options)

        }

        }



        這樣我們就已經封裝完成啦,接下來就是 在頁面內使用!

        第四步、

        我們可以在頁面中來調取已經封裝好的自定義事件啦



        例一:

        個人建議使用ES6新語法 箭頭函數 不然使用this還要重新在外面聲明定義,太麻煩了,使用箭頭函數就會方便很多



        // 已封裝好的接口方法

        //本案例調取接口時 沒有參數上傳 直接調用的

        //這樣使用方法時只傳遞了一個參數,也就是接口地址

        //第二個參數沒有寫,默認為空;假如有參數的話 可以直接填寫

        //后面的參數都為接口內已經定義好的默認值:{}空對象

        //里面的res為接口返回數據中的data里面的內容

        this.$H.get('/api/getIndexCarousel.jsp').then(res=>{

        //res打印出來是接口返回數據中data里面的數據

        console.log(res)

        //賦給數據區的變量,方便本頁面使用

        this.swiperData = res

        });



        例二、



        // 已封裝好的接口方法

        //本案例使用時 傳遞了三個參數

        //第一個為:接口地址

        //第二個為:調取接口傳遞的參數,方法使用時不用傳參,寫空對象就好

        //第三個為:自定義事件中 native 的屬性 若為true 則返回原數據

        //若想返回原數據,必須要填寫第二個參數,若沒有參數,也要寫空對象

        //因為方法調用時 是按照傳參順序調用的,若不寫 參數傳遞就會出錯

        this.$H.get('/api/getIndexCarousel.jsp',{},{

        native:true

        }).then(res=>{

        //res打印出來的數據是接口返回來的原數據

        console.log(res)

        //賦給數據區的變量,方便本頁面使用

        this.swiperData = res

        });




        日歷

        鏈接

        個人資料

        藍藍設計的小編 http://m.hengshangtqd.cn

        存檔

        主站蜘蛛池模板: 性爱综合网| 99久久精品美女高潮喷水 | 欧美a级欧美1级a大片| 久热99在线播放| 免费无遮挡无码永久视频| 日韩av日韩av在线| 中文字幕av一区| 天堂а√8在线最新版在线| 九色综合伊人久久富二代| 国产成人av电影在线观看第一页| 在线aⅴ亚洲中文字幕| 亚洲av产在线精品亚洲第一站| 国产精品午夜福利视频| 国产AV无码专区亚洲AV漫画| 国产精品久久久久久超碰| 亚洲色欲色欲大片WWW无码| 久久综合色之久久综合| 76少妇精品导航久久久久| 欧美曰韩国久久| 无码人妻aⅴ一区二区三区蜜桃| 最新国产精品拍自在线观看| 久久人人妻人人爽人人爽| 亚洲欧美成人一区二区三区| 日韩av一区二区精品不卡| 成人久久精品国产亚洲av| japanese无码中文字幕| 亚洲精品视频自拍偷拍| 亚洲欧美中文日韩V日本| 国产?欧美?欧洲| 秋霞国产午夜伦午夜福利片| 雪千夏的mv观看| 日韩成人一区二区二十六区| 日韩成人A级毛片| 国产亚洲成人网| 在线视频中文字幕二区| 亚洲高潮喷水无码AV电影| 欧美成人看片黄A免费看| 免费无码高H视频在线观看| 国产精品一区二区性色av| 泾源县| 好男人神马影院www免费|