前端開發
Nuxt 安裝 @nuxtjs/axios 模組
記錄在 Nuxt 2 專案安裝 @nuxtjs/axios 模組,讓元件裡能直接用 this.$axios 發請求的做法。這個模組已經停止維護,Nuxt 3 之後改用內建的 useFetch/$fetch,整理在新的一篇。
W
安裝
npm install @nuxtjs/axios
nuxt.config.js 註冊模組:
export default {
modules: ['@nuxtjs/axios'],
axios: {
baseURL: 'https://api.example.com',
},
};
註冊完之後,任何元件裡都能直接用 this.$axios 發請求,不需要自己在每個檔案裡 import axios:
export default {
async asyncData({ $axios }) {
const posts = await $axios.$get('/posts');
return { posts };
},
};
$axios.$get()(前面多一個 $)是這個模組提供的簡化方法,直接回傳 response.data,不用自己再多寫一層 .then(res => res.data)。
現在還適用嗎
@nuxtjs/axios 已經停止維護,Nuxt 官方在 Nuxt 3 之後不再推薦它,改成推內建的 useFetch/$fetch(底層是 ofetch),不需要額外安裝任何模組。整理在《Nuxt 內建的 useFetch 與 $fetch》。