Задать вопрос
@danilr

Как вызвать мутацию из компонента, если хранилище разделено на модули?

Как вызвать мутацию из компонента?

Cам vuex:

export default new Vuex.Store({
  modules: {
    residentials,
    administration
  }
})

Модуль administration:

import { HTTP, Routes } from '@/components/Server/API'

export default{
  // namespaced: true,
  state:{
    usersInGroup: {},
    groups: [],
    roles: [],
    users: 3
  },
  actions:{
  },
  mutations:{
    getUsersinGroup(state) {
      console.log('data');
      HTTP.post(Routes.getUsersinGroup, {})
        .then(({ data }) => {
          state.usersInGroup = data;
          state.groups = data.groups;
          state.roles = data.roles;
          state.users = data.users;
          console.log(data);
        })
        .catch(error => {
          console.error(error);
        });
    }

  }
}

И так вызываю мутацию в компоненте:

mounted() {
    console.log(this.$store.state.administration.users); // это для теста( работает)
    
    this.$store.commit.administration('getUsersinGroup') // тут не работает, как правильно вызвать?
    
  }
  • Вопрос задан
  • 1917 просмотров
Подписаться 1 Средний 2 комментария
Решения вопроса 1
Если не указаны неймспейсы - this.$store.commit('getUsersinGroup');
https://vuex.vuejs.org/ru/guide/modules.html
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы