nuxt如何在vuex的actions中使用axios请求?
我正在做在一个从SPA转为SSA的项目,现在遇到一个问题:无法使用已经设置了拦截器的nuxt/axios在actions里请求。
之前在SPA的请求,直接在actions最前面import已经做好拦截器的axios即可:
import api from '@/plugins/axios';export const actions = {
getUser: async function ({ commit }, id) {
let response = await api.get('/user/' + id)
return response.data
}
}
但是现在在nuxt项目中,无法这样子引入,因为无法获得nuxt/aixos的实例。
nuxt/axios拦截器的设置,是export一个 function,并在nuxt.config中进行了ssr的处理,import无意义,我的写法参考这个:https://blog.csdn.net/u013934...
如果我还是按照以前的方式,使用import api from '@/plugins/axios',得到的只是一个原初的函数,并不能进行请求
谁能告诉我究竟如何在能在actions里使用我已经设置了拦截器的nuxt/axios?谢谢!
这个问题的核心就是:如何将我做好拦截器的nuxt/axios的实例暴露出来,使其它文件可以使用
回答:
直接this.$axios
参考:https://axios.nuxtjs.org/usage#store-actions
回答:
node端不像浏览器端,不知道你的baseUrl是啥,你得拦截器里设置baseURL或者在实际请求时写完整的网址
以上是 nuxt如何在vuex的actions中使用axios请求? 的全部内容, 来源链接: utcz.com/p/936966.html