uni-app封裝一個(gè)request請(qǐng)求

在上一篇文章里面二庵,寫到使用uni.request請(qǐng)求的方法
http://www.reibang.com/p/bc62c9e1beed

getList() {         
                uni.request({
                    url: "https://unidemo.dcloud.net.cn/api/news",                  
                    method: 'get',
                    dataType: 'json',
                    success: (res) => {
                        console.log(res.data);
                        this.productList = res.data;
                    },                  
                });
            },

但是實(shí)際做項(xiàng)目的時(shí)候亲茅,會(huì)發(fā)現(xiàn)每個(gè)界面都要重復(fù)的寫這些譬挚,看起來(lái)重復(fù)又啰嗦,心情就十分的不美麗了攻锰。

如果不封裝那么我們會(huì)面臨幾個(gè)不方便的地方:

請(qǐng)求頭每次網(wǎng)絡(luò)請(qǐng)求都要單獨(dú)設(shè)置
返回?cái)?shù)據(jù)的正確性判斷每次都要重復(fù)大量代碼
返回?cái)?shù)據(jù)格式有變化需要修改所有網(wǎng)絡(luò)請(qǐng)求的地方

那么揩魂,該怎么使用uni-app封裝一個(gè)request請(qǐng)求?步驟很簡(jiǎn)單拐揭,且聽我一一道來(lái)撤蟆。

注意:使用的例子,來(lái)自于這篇文章的相關(guān)的代碼堂污,修改封裝請(qǐng)求是基于這個(gè)文章里面代碼家肯。進(jìn)行相關(guān)的修改的。
http://www.reibang.com/p/bc62c9e1beed

步驟如下:

1盟猖、項(xiàng)目下新建common文件夾讨衣,再創(chuàng)建request.js文件

2、打開request.js文件式镐,開始寫封裝的代碼

思路很簡(jiǎn)單

定義域名:baseUrl反镇;
定義方法:api;
通過(guò)promise異步請(qǐng)求娘汞,最后導(dǎo)出方法歹茶。

request.js參考代碼如下

const baseUrl = 'https://unidemo.dcloud.net.cn'   
const request = (url = '', date = {}, type = 'GET', header = {
}) => {
    return new Promise((resolve, reject) => {
        uni.request({
            method: type,
            url: baseUrl + url,
            data: date,
            header: header,
            dataType: 'json',         
        }).then((response) => {
            setTimeout(function() {
                uni.hideLoading();
            }, 200);
            let [error, res] = response;        
            resolve(res.data);
        }).catch(error => {
            let [err, res] = error;
            reject(err)
        })
    });
}
export default request
3、在main.js全局注冊(cè)
import request from 'common/request.js'
Vue.prototype.$request = request
4你弦、頁(yè)面調(diào)用
this.$request('/api/news', {
// 傳參參數(shù)名:參數(shù)值,如果沒有惊豺,就不需要傳
}).then(res => {
// 打印調(diào)用成功回調(diào)
console.log(res)
})

頁(yè)面調(diào)用的index.vue

<template>
    <view>
        <uni-list v-for="(item,index) in productList" :key="index">
            <uni-list-item :title="item.author_name" :note="item.title"></uni-list-item>
        </uni-list>

    </view>
</template>
<script>
    import uniList from "@/components/uni-list/uni-list.vue"
    import uniListItem from "@/components/uni-list-item/uni-list-item.vue"
    export default {
        components: {
            uniList,
            uniListItem
        },
        data() {
            return {
                productList: [],
            };
        },
        onLoad() {
            this.getList();
        },
        methods: {
            getList() {
                this.$request('/api/news', {
                    // 傳參參數(shù)名:參數(shù)值,如果沒有,就不需要傳
                    // "username": "john",
                    // "key": this.searchValue
                }).then(res => {
                    // 打印調(diào)用成功回調(diào)
                    console.log(res)
                    this.productList = res;
                })
            },
        }
    }
</script>
<style>
</style>

成功顯示


好了禽作,完結(jié)扮叨,散花,準(zhǔn)備睡覺A炻酢彻磁!
各位路過(guò)的小哥哥碍沐,小姐姐,喜歡的就點(diǎn)個(gè)贊唄衷蜓。

歡迎關(guān)注【編程微刊】公眾號(hào)累提,回復(fù)【領(lǐng)取資源】,500G編程學(xué)習(xí)資源干貨免費(fèi)送。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末磁浇,一起剝皮案震驚了整個(gè)濱河市斋陪,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌置吓,老刑警劉巖无虚,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異衍锚,居然都是意外死亡友题,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門戴质,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)度宦,“玉大人,你說(shuō)我怎么就攤上這事告匠「瓿” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵后专,是天一觀的道長(zhǎng)划鸽。 經(jīng)常有香客問(wèn)我,道長(zhǎng)戚哎,這世上最難降的妖魔是什么漾稀? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮建瘫,結(jié)果婚禮上崭捍,老公的妹妹穿的比我還像新娘。我一直安慰自己啰脚,他們只是感情好殷蛇,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著橄浓,像睡著了一般粒梦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上荸实,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天匀们,我揣著相機(jī)與錄音,去河邊找鬼准给。 笑死泄朴,一個(gè)胖子當(dāng)著我的面吹牛重抖,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播祖灰,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼钟沛,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了局扶?” 一聲冷哼從身側(cè)響起恨统,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎三妈,沒想到半個(gè)月后畜埋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡畴蒲,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年悠鞍,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片饿凛。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡狞玛,死狀恐怖软驰,靈堂內(nèi)的尸體忽然破棺而出涧窒,到底是詐尸還是另有隱情,我是刑警寧澤锭亏,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布纠吴,位于F島的核電站,受9級(jí)特大地震影響慧瘤,放射性物質(zhì)發(fā)生泄漏戴已。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一锅减、第九天 我趴在偏房一處隱蔽的房頂上張望糖儡。 院中可真熱鬧,春花似錦怔匣、人聲如沸握联。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)金闽。三九已至,卻和暖如春剿骨,著一層夾襖步出監(jiān)牢的瞬間代芜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工浓利, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留挤庇,地道東北人钞速。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像罚随,于是被迫代替她去往敵國(guó)和親玉工。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345