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

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

В MobX состояние мутируется напрямую через изменения свойств observable-объектов. В отличие от Redux, MobX не требует иммутабельных обновлений. Достаточно изменить значение, и MobX автоматически отследит изменения и обновит зависящие от него компоненты.

javascript
import { makeObservable, observable, action } from "mobx";

class Store {
  count = 0;

  constructor() {
    makeObservable(this, {
      count: observable,
      increment: action
    });
  }

  increment() {
    this.count++; // Прямая мутация!
  }
}

Важные моменты:

  1. Изменения должны происходить внутри action (хотя в strict mode можно отключить это требование)
  2. Для массивов и объектов работают стандартные методы (push, pop, прямое присваивание)
  3. MobX сам отслеживает зависимости и оптимизирует ререндеры
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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