我将如何将axios/axios拦截器全局连接到nuxt(因此它在任何地方都可用),i18n的连接方式也是一样的?

我的 idea 是,我希望有一个全局axios拦截器,每个请求都通过该拦截器.

谢谢

推荐答案

您可以创建一个名为axios的插件(/plugins/axios.js)

import Vue from 'vue';
import axios from 'axios';

axios.interceptors.request.use((config) => {
  // Do something before request is sent
  return config;
}, function (error) {
  // Do something with request error
  return Promise.reject(error);
});

Vue.use(axios);

然后在nuxt中定义它.配置.js

module.exports = {
    //....

    plugins: [
      '~/plugins/axios',
    ],

    //....
};

仅此而已,你的拦截器现在正在全局工作

Vue.js相关问答推荐

将事件监听器绑定到动态元素

无法解析组件:google—pay—button

具有VUE身份验证的Azure AD

手动触发对观察到的对象/数组的更新

混合使用 React 和 Vue 是个好主意吗?

如何使用 vue 或 javascript 向服务器发送密码?

Vue.js 和观察者模式

VuetifyJS:如何摆脱 v-stepper 组件的提升?

如何渲染数组以 Select 选项 vue.js

eslint – 如何知道 defined定义规则的位置

VueJS 组件中的图像未加载

如何在某些路由上隐藏全局组件(例如导航栏)?

简单的点击功能不触发

将登录页面包含在单页应用程序中是否不安全?

Vuetify 过渡:如何设置过渡速度

Vuex Mutation 正在运行,但组件在 vue 开发工具中手动提交之前不会更新

使用 VueJS 使用 3rd 方库打印元素

Vue中的嵌套循环

如何在 Vue.js 2 应用程序中模拟 onbeforeunload?

为什么不能在 vue 模板中使用窗口?