uni app封裝網路請求promise

2022-05-28 20:54:14 字數 2332 閱讀 9499

在專案的根目錄下,建立http資料夾。

然後在建立request.js檔案

檔案**如下

export  function apiapi(myurl,myget,mydata,tou="accept: text/plain" ),//引數

header: ,

// 成功使用resolve

success: (res) => ,

//失敗呼叫reject

fail:(err)=>

});})}

我是使用的promise進行封裝的。

對promise封裝的注意點

要有返回值 return

resolve,是成功時直接呼叫。將要傳遞的引數放入進去resolve(res)

reject失敗錯誤直接呼叫。將要傳遞的引數直接放進去reject(err)

注意在乙個模組中,可以同時使用export default 和export 向外暴露成員

使用export向外暴露的成員,使用的形式來接收,這種形式,叫做【按需匯出】

使用export匯出的成員,必須嚴格按照匯出時候的名稱,來使用按需接收

使用export匯出的成員,如果想換個變數名稱接收,可以使用as來起別名

import from './test.js'

在某乙個頁面使用

先引入;這裡注意匯入的apiapi應該和暴露出來的一致哈!

//監聽頁面載入(常用來傳送請求)

按照上面這樣封裝,會出現乙個問題就是。

每次使用的時候,都會引入。這樣會很麻煩的。

因為我們幾乎每乙個頁面都發是哪個請求

所以可以優化一下

將這個檔案在main.js中引入。

然後掛載到vue的原型上。

然後就可以直接使用了。因為原型的特點就是資料共享,節約空間

main.js

//因為是export暴露出來的,所以要使用{}來接受哈

//直接掛載到原型上 通過this.$api直接呼叫

vue.prototype.$api=apiapi;

在某個使用的頁面

不需要再次引入了,因為掛載到原型上的

//監聽頁面載入,其引數為上個頁面傳遞的資料,引數型別為object(用於頁面傳參)

我們在專案中,通常是將所有的請求放在同乙個檔案中。

這樣方便我們管理

所以在 https資料夾中再新建乙個檔案,

命名為api.js

api.js檔案

這一句等價於

// 如果只有乙個引數,可以省略括號。params是引數。

// export const aa= params=> 說明是乙個匿名函式

// 去掉大括號的時候,可以去掉retuen.

// const aa=function(params)

// export aa

main.js掛載到原型上
//引入進行接收

//listapi 身上有很多的方法,那個api.js所有的方法都在listapi上

//掛載到原型上

vue.prototype.$listapi=listapi;

使用頁面
onload(option)).then(res=>).catch(err=>)

},

這樣使用起來是不是更加的簡單了。

更加的方便了呢。

將所有的介面進行統一的管理。便於維護了

uniapp封裝網路請求

在專案下新建utils資料夾,已有則不用新建,在utils資料夾下新建http.js檔案 得到傳來的引數 用params來接收,接下來先定義幾個會用到的東西 header有就傳 沒有就為空 data也是 有就傳 沒有就為空 因為get請求可以不用header 也可以不用data 請求方式不同 有ge...

uni app請求封裝

ajax封裝 在src下建立資料夾,如uilts資料夾 建立request.js檔案。用於封裝ajax請求 request.js 如下 export default function url data method get 函式裡面的形參各表示 url 將被呼叫的url形參,data 需要傳入引數的...

uniapp雲開發請求封裝

雲開發中請求中對於對多個雲函式的大段重複邏輯,還是很有必要封裝一下的 大概這樣的目錄 apis 目錄 2 file 批量引入檔案 const requestapi require.context apis false,js let modules requestapi.keys foreach ke...