JimmiJanger
@JimmiJanger
Любопытный активист, под маской ленивого нуба.

Vuex, проблема с тоталитарным режимом «strict: true»?

Приведу часть кода
<div class="row" v-for="(book, index) in this.books" :key="index">
    <input class="name-book" v-model="book.title">
  </div>

Вот если так писать код, постоянно выскакивает ошибка
"Error: [vuex] do not mutate vuex store state outside mutation handlers."

Когда я хочу этот input редактировать.

Как я понимаю, ему не нравится что я напрямую изменяю данные в state, по этому и ругается.
По этому пишу следующее:
<input class="name-book" v-model="inputBook">
  ...
  ...
  computed: {
    inputBook: {
      get(){},
      set(){},
    }
  }
  ...

И тут я понимаю, что не знаю как передать индекс в inputBook
пишу вот так вот:
get(...arg){ console.log(...arg); },
Ничего не выдаёт =(

Подскажите, пожалуйста ...
  • Вопрос задан
  • 129 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dGololobov
начинающий
<div class="row" v-for="(book, index) in books" :key="index">
    <input class="name-book" v-model="books[index]title">
  </div>


В v-model надо обращаться не к детерминированному массиву books

Но кажется, что ошибку "Error: [vuex] do not mutate vuex store state outside mutation handlers." это не решит.

чтобы записать значение в store надо использовать экшены и мутации
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы