当前位置: 首页 > Web前端 > HTML5

vue中如何修改Modal的reset功能?(重置不单独调整后台界面)工作时可以使用弹出模态框形式的深拷贝

时间:2023-04-05 00:31:16 HTML5

修改功能。模态框里面是一个Form表单,Form表单中的内容是从后台获取的。这时候如果用户没有提交修改,而是想重置重新修改怎么办?①重新调整后台界面,将原来的数据重新放入Form中。这种方法可能会浪费资源并占用带宽。②可以使用缓存。③可以用深拷贝简单说明一下深拷贝和浅拷贝,a也变了,说明复制不完整。这是一个浅拷贝。A复制b,修改b,a保持不变。这是一个深拷贝。深拷贝通常发生在复杂的数据类型中。原因是基本数据类型和复杂数据类型的存储方式不同。关于深拷贝和浅拷贝的文章很多。想了解更多的同学可以直接在下方搜索方法。我们可以在任意js文件中封装一个深拷贝功能(根据自己的项目)/***deepcopy*@param{*}arr*/exportconstcopyArray=(arr)=>{returnJSON.parse(JSON.stringify(arr))}然后在你使用修改函数的vue文件中,直接import即可model//data为Form的初始数据(修改前)this.formInline=copyArray(data)这是深拷贝的json方法。深拷贝有很多种方式。你可以自己解释一下这个方法的原理。上面说了基本数据类型没有深拷贝。json.stringify()将数组数据类型转换成String数据类型String属于基本数据类型,基本数据类型传值varb=1;变量a=b;b++;console.log(a,b)//此时复制1,2,然后将字符串转成对象后,实现深拷贝!取得微小但每天的进步!