在一个购物车列表中,购物车数据来自于 store, 我通过 vm.$set() 给数组每一项添加一个新的属性 isChecked 来关联每一项的选中状态。
computed: {
cartBooks: function() {
var carts = this.$store.getters.getCartBookList;
if (carts.length > 0) {
carts.forEach((item, index, array) => {
this.$set(item, 'isChecked', true);
});
} else {
this.isCheckedAll = false;
}
return carts;
}
}
但是却报错:
"Error: [vuex] Do not mutate vuex store state outside mutation handlers."
请问是否因为 store 中的数据只能通过 mutations 方法来修改,但我在 mutation 之外又通过 vm.$set() 来修改了 store 中的数据才出现这种错误呢?
这种错误要如何处理呢?
相关分类