在nuxtjs中的中间件中访问命名空间的getter函数

时间:2020-03-11 14:55:00

标签: vuejs2 vuex nuxt.js

我有一个名为store / auth.js的商店模块,因为我有一个吸气剂

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")

1 个答案:

答案 0 :(得分:1)

您可以按以下方式访问vuex获取器:

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