解决vue项目中遇到的深拷贝浅拷贝问题

解决vue项目中遇到的深拷贝浅拷贝问题

遇到的问题:使用element-ui修改表单文本框的数据时,无论确定还是取消,页面数据都在同步修改
原因:复杂类型的赋值是浅拷贝,直接赋值 会导致双向修改
解决的方法:将浅拷贝转换成深拷贝
解决思路:先把该对象转成字符串(普通数据类型), 就没有引用类型的影响了。再转回对象使用。

转换方式 :JSON.parse(JSON.stringify(对象))在这里插入图片描述
这里简述下深拷贝浅拷贝的概念
浅拷贝: 将A对象赋值给B对象,修改B对象的属性和方法会影响到A对象的属性和方法。
深拷贝 将A对象赋值给B对象,修改B对象的属性和方法不会影响到A对象的属性和方法。

猜你喜欢

转载自blog.csdn.net/oilpastell/article/details/106624728