Встречается на собеседованиях • сегодня

Как мутируется state во Vue

В Vue state мутируется через методы, обычно внутри methods или actions (в Vuex). Для реактивности важно изменять state правильно:

  1. Для объектов и массивов – напрямую менять свойства/элементы можно, но добавление новых полей требует Vue.set() или this.$set() для реактивности.
js
data() {
  return {
    user: { name: 'Alice' }
  }
},
methods: {
  updateName() {
    this.user.name = 'Bob'; // Работает
    this.$set(this.user, 'age', 30); // Добавляет реактивное поле
  }
}
  1. Для массивов – используйте методы массива (push, splice) или $set.
js
methods: {
  addItem() {
    this.items.push('New Item'); // Реактивно
    this.$set(this.items, 0, 'Updated'); // Реактивно
  }
}
  1. В Vuex – мутации делаются через commit мутаций (синхронно) или dispatch действий (асинхронно).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы