关于vue在列表展示数据的时候,选择更改其中一项,数据跟着实时变动的问题,求指教

页面中有一个表格,点击表格中的修改,弹出来一个修改框可以修改数据,但是现在问题是,在弹出框对其进行修改的时候,列表中对应的数据也在实时的变动。我想要的效果是,当我保存的时候时候,在使列表数据更改,而不是输入框一边更改,列表实时跟这边。。。求指教啊
图片描述


图片描述

amendList:function(index,row){
                this.popoverData.amendForm=row;
                this.popoverData.amend=true;
              },

回答:

在每次弹出对话框的时候深拷贝一次当前行数据的副本,form = JSON.parse(JSON.stringify(row))
完成提交后要么重新刷新数据源,要么将form的数据更新到row

回答:

你把两个地方的值都绑定在一个数据上面,改一个地方另外一个地方肯定会跟着变。建议修改的时候另用一个对象将需要修改的内容存进来。比如原来的一列的数据对象是obj,修改的时候将当前obj的值给另一个editInfo上,修改框的数据绑定到editInfo上。

回答:

拷贝个对象副本,修改以后替换就行了啊,这种是浅拷贝,深拷贝参考楼上转换为字符串再解析的

let newObj = Objcet.assign({}, oldObj)

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注