为了账号安全,请及时绑定邮箱和手机立即绑定

Vue组件中改变Vuex中一个数组的某一项,其他项也全都被修改

Vue组件中改变Vuex中一个数组的某一项,其他项也全都被修改

阿波罗的战车 2018-08-31 18:19:28
list是从vuex中取出的一个数组,row是新对象。直接打印keyText,是未修改的值。上面的console.log(list)打印出来的是已经修改过的数组。并且list[0].info.formRow也被修改成了row对象。我在下面又打印了list[0].info.formRow[0].keyText,是已经修改过的,但是Vue.set方法明明修改的是list[1]中的值。另一个组件中改变的list[1].info对象中的一个字符串属性,却不会影响到list[0].info中的这个属性。现在只能先把widgetListInuse克隆,然后修改克隆后的list,再把它用store.commit提交到vuex中。这样虽然可以实现需求了,但是这个原始的问题没有解决。
查看完整描述

2 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

看来你没理解Vuex的设计,对state的修改需要全部走mutation,你可以改一下试试。

查看完整回答
反对 回复 2018-09-09
?
HUH函数

TA贡献1836条经验 获得超4个赞

数组里边对象保存的是索引,拿出来的是一个索引,一个改都改

查看完整回答
反对 回复 2018-09-09
  • 2 回答
  • 0 关注
  • 5236 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信