Ошибка: “Do not mutate vuex store state outside mutation handlers”

291
15 ноября 2017, 03:01

Не могу понять в чем дело. Я понимаю о чем эта ошибка, но я не понимаю почему она возникает, ведь я все сделал правильно. Это мутация:

['SET_POSTS'] (state, posts) {
    console.log(posts)
    state.lists.posts = posts
}

Ругается на строку state.lists.posts = posts.

Если я заменю строку state.lists.posts = posts на, например, эту state.lists.posts = ['posts'], то ошибка более не возникает.

Строка console.log(posts) возвращает массив с объектами. И он помещается (заменяя старый) в хранилище, несмотря на ошибку.

Мутация идет через действие:

this.$store.dispatch('posts/setPosts', posts)

Строка выше находится в методе, который вызывается директивой v-on через $emit из дочернего компонента.

Раньше никогда не возникало подобных проблем с этой ошибкой.

Подскажите, пожалуйста, в чем дело?

READ ALSO
Из node запустить phantomjs через cron

Из node запустить phantomjs через cron

ЗдравствуйтеЕсть скрипт phantomjs открывающий и делающий скриншот страницы

344
querySelectorAll javascript [дубликат]

querySelectorAll javascript [дубликат]

На данный вопрос уже ответили:

286
Получить ячейку таблицы по индексам

Получить ячейку таблицы по индексам

Скажите, пожалуйста, как можно получить элемент ячейки таблицы (HTMLTableDataCellElement), если я знаю индексы строки и столбца, на пересечении которых...

341
Ajax форма reset

Ajax форма reset

Насколько я понимаю, trigger("reset") должен очищать поля формы, после отправкиПочему этого не происходит ?

290