使用vuex的伙伴们可能经常在改变state中的数组或者对象的时候,报这样一个错误,它的意思是不要在mutation函数外修改VUEX存储状态,也就是只能通过mapMutations修改,不能直接修改数组或对象
那么怎么修改它呢?
修改数组数据的方法
错误的写法:let listData= state.playList; // 数组深拷贝,VUEX就报错
正确的写法:let listDate= state.playList.slice(); //不能直接操作state里面的属性,但是可以创建一个副本
修改对象的方法
错误的写法:let listData= state.playList; // 对象深拷贝,VUEX就报错
正确的写法:let listDate= Object.assign({}, state.playList); //不能直接操作state里面的属性,但是可以创建一个副本
版权声明:除特别注明外,本站所有文章均为田珊珊个人博客原创
转载请注明:出处来自田珊珊个人博客 » VUEX报错 [vuex] Do not mutate vuex store state outside mutation handlers