使用elementUI的表格做增删改时,弹窗的内容会改变表格的内容解决方法

在使用ElementUI的表格组件实现增删改功能时,遇到修改弹窗内容导致表格实时更新的错误。问题源于对象浅拷贝,通过`this.saveForm=this.checkDataArr[0];`赋值导致。解决方法是采用深拷贝,将赋值语句改为`this.saveForm=JSON.parse(JSON.stringify(this.checkDataArr[0]));`,确保弹窗修改不会影响表格原始数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求

使用elementUI的表格,做一个增删改的功能。

问题

如下图所示,当修改dialog的内容时,表格也会进行修改的问题。

表格原数据

在这里插入图片描述

第一行的类别名称是AA,当我选中这行数据时,点复制。

在这里插入图片描述

进行复制给弹出框。

在这里插入图片描述

当输入类别名称时,表格的类别名称也进行了相应的修改。

如何解决

这样的情况肯定是有问题的,如何解决呢?

问题出现在:

this.saveForm=this.checkDataArr[0];

这样的赋值是有问题的,因为后者是Object对象类型,如果直接赋值,属于浅拷贝,赋值的是地址,会导致弹窗改变值的时候表格随着改变,因为属于一个变量。

所以要改为深拷贝。将赋值操作改为:

this.saveForm=JSON.parse(JSON.stringify(this.checkDataArr[0]));

这时再来修改,就没有问题了。你学会了吗?

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力的蚂蚁【你若】

如果帮助到了您,一分也是爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值