Nuxt.js 商店中不执行常用功能

Common functions are not executed in Nuxt.js store

假设

想在Nuxt.js中使用inject共享同一个进程,想在Vuex中使用,所以尝试在store中使用,但是不会运行。我该如何使用它?

我们想要实现的目标

我想在商店中执行常用功能。

代码

店铺

this.$axios.$post(`${url.POST_API}poss`, {
      post: {
・
・
・
・
      .catch(() => {
        // commit('alertSwitchError', true)
        // setTimeout(() => {
        //   commit('alertSwitchError', false)
        // }, 3000)
        this.$errorHandling
      })
  }

plugin/responsePocessing

const errorHandling = ({ store }) => {
  store.commit('alertSwitchError', true)
  setTimeout(() => {
    store.commit('alertSwitchError', false)
  }, 3000)
}

export default ({ app }, inject) => {
  inject('errorHandling', errorHandling)
}

nuxt.config.js

・
・
・
  plugins: [
・
・
    'plugins/responsePocessing'
  ],

・
・
・

错误

没有错误。

我想到的最好的解决方案是在 utils 目录中定义您的错误处理函数,然后您可以使用 import 将其导入到您的插件中,并单独将其导入到您的存储文件中。

但如果您不打算在您的组件或页面中使用它,我建议您根本不要创建插件。只需在您的 utils 目录中创建一个文件,例如 processUtils.js,然后将其导入您的商店。

问题是在 nuxt 中创建的插件,因此您可以在模板和脚本标签中注入所需的功能,商店无法访问插件