繁体   English   中英

NuxtJS 将上下文、存储、注入和 axios 传递给插件

[英]NuxtJS pass context, store, inject and axios to plugin

正如我的问题所暗示的那样,我想将 $axios、上下文、存储和注入功能传递给我编写的与axiosauth0集成的插件。

我收到此错误...

Cannot read property 'authUrl' of undefined

用这个代码...

export default ({ $axios }, context, store, inject) => {
const auth = $axios.create({
  baseURL: context.env.authUrl,
  headers: {
    Accept: store.$auth.$storage._state[`_token.auth0`],
    Authorization: `application/vnd.api+json`,
  }
});
}

我想这是参数传递给函数的方式吗? 任何帮助将不胜感激,谢谢!

通常,当你创建一个插件时,你将它写成这样的形式

export default ({ store, $axios }, inject) => {
  // access store or $axios directly
})

或者

export default (context, inject) => {
  // here you have context.store or context.$axios
})

请参阅此处参考https://nuxtjs.org/docs/2.x/directory-structure/plugins

请注意,您在nuxt.config.js设置插件的nuxt.config.js可能会影响上下文中注入插件的可用性:如果 axios 插件是您的自定义插件之后插入的,您将无法在其中使用 axios 本身.

但是,nuxt 的 Axios 模块有一些可能有用的有趣帮助器(请参阅https://axios.nuxtjs.org/helpers

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM