Что является запросами в компонентах во Vuex

Ответ

В Vuex запросы к данным хранилища выполняются через геттеры (getters). Это вычисляемые свойства хранилища, которые позволяют получать и обрабатывать данные без их изменения.

Геттеры:

  • Кэшируются, как computed-свойства
  • Принимают state и другие геттеры как аргументы
  • Могут возвращать динамические данные через функцию

Пример:

const store = new Vuex.Store({
  state: { todos: [{ id: 1, text: 'Learn Vuex', done: true }] },
  getters: {
    doneTodos: state => state.todos.filter(todo => todo.done),
    getTodoById: state => id => state.todos.find(todo => todo.id === id)
  }
});

// В компоненте:
computed: {
  doneTodos() { return this.$store.getters.doneTodos; },
  todo() { return this.$store.getters.getTodoById(1); }
}

Для сложных запросов можно использовать mapGetters из vuex.