首页 > 解决方案 > 在 nuxtjs 的中间件中访问命名空间的 getter 函数

问题描述

我有一个名为 store/auth.js 的商店模块,其中有一个 getter

export const getters = {
  isAuthenticated(state) {
     return state.token != null
  }
}

现在我想在我的中间件中调用这个命名空间的 getter。我将如何调用那个吸气剂?

这似乎有效,但即使没有任何命名空间......

export default function (context) {
  if(!context.store.getters.isAuthenticated)
    context.redirect('/')
  }
}

吸气剂的行为是否与我必须调用的动作或突变不同auth/

context.store.dispatch("auth/SomeVuexAction")

标签: vuejs2vuexnuxt.js

解决方案


您可以按如下方式访问 vuex getter:

context.store.getters["modulename/gettername"]
i.e.(In your case) mention correct module and getter name
context.store.getters["auth/isAuthenticated"]

推荐阅读