前言
不知道大家有沒有遇過 API
已經設定好了,某天被告知 domain
有調整過,或是某些 get
、post
方法需要多加參數等設定,導致必須不斷地找專案內 call API
的地方,有時還會遺漏幾處產生嚴重問題呢。以下教各位如何高效率的管理專案內的 API
,即便是小專案也該如此。
官方 axios 範例
1 | import axios from 'axios'; /* 依照你的專案形式引入套件 */ |
這種作法相當直覺,針對特定功能去 call api
,確實可以這樣寫,但當專案 API
超過 10 支、20支甚至更多時,這樣子的寫法就變得不好管理,如果 domain
、參數
一改,就得一個一個找出來慢慢改,真的很麻煩。
高效率管理 API 方法
使用官方的 axios.create
方法,可以利用此方法來新增一個 axios
實體。
首先建立 api.js
,之後 API
都在這支檔案內管理。
1 | import axios from 'axios'; |
要使用的話,直接 import
這支 api.js
1 | /* 只 import 要使用的 API */ |
高效率的管理優點
- 可以確保所有的
API
都是同一進入點,即便在各元件js
內呼叫API
,最後只需管理一支api
,對於日後API
有需要要修改會方便很多。 - 使用
axios.create
產生出的實體可以透過變數的方式給予新的API 名稱
,透過團隊命名規範來清楚知道API
的功能。 - 除了可以減少超長的
api url
,還能大幅減少程式碼的撰寫,並搭配axios
回傳的Promise
特性,可以使用Async / Await
減少.then()
的寫法,提高程式碼可讀性