Магазин не распознает мои модули и не показывает ошибок - PullRequest
0 голосов
/ 07 мая 2020

У меня есть файл store. js в моем приложении VueJS, но он становится слишком большим, поэтому я попытался создать для него несколько модулей. Однако я не уверен, что делаю неправильно, так как один из моих файлов модулей работает нормально, в то время как другой ничего не делает и никаких ошибок не отображается, мои компоненты просто не отображаются.

Все мои файлы модулей следующим образом:

const myModule= {
  state: {
    myState: false
  },
  mutations: {
    myMutation (state){
      return state.myState= true;
    }
  },
  actions: {
    myAction({ commit }) {
      // what i need to be done
    }
  },
  getters: {
    myState( state ) {
      return state.myState;
    }    
    }
  }

  export default myModule;

И я импортирую их в свой магазин. js файл выглядит следующим образом:

import myModule from '@/modules/myModule'

const store = new Vuex.Store({
  namespaced: true,
  modules: {
    loginModule
  },

и я пробовал использовать их состояния и действия следующим образом

this.$store.dispatch('myAction').myModule
this.$store.getters['myModule/myState']

Однако работает только первый созданный мной файл модуля, в то время как другие - нет, и все они имеют одинаковую структуру и не показывают ошибок. Не уверен, что здесь не так.

EDIT: очевидно, что действия работают, но не мои геттеры.

1 Ответ

0 голосов
/ 08 мая 2020

Насколько я могу судить, вам не нужно, чтобы хранилище было пространством имен.

https://vuex.vuejs.org/guide/modules.html#accessing -global-assets-in-namespaced-modules

Вам больше всего нравится, чтобы модули располагались в пространстве имен.

Затем вы можете легко получить доступ к своим свойствам с помощью mapGetters, mapState, mapMutations, mapActions

...