vue + element ui 中点击表单编辑,未发起请求,表格数据也跟着改变的问题
问题描述:点击编辑表格某一条数据时,此时并未发起请求修改数据,但是表格的数据也会随着改变
分析原因:在表单编辑当前数据时,还没有点击确定或者取消,此时表格的数据已经改变,而奇怪的是浏览器并未发起请求修改数据,原来是回显数据的时候直接修改了目标的数据。这是浅拷贝,引用地址还是用的真实数据,虽然没有保存到数据库中,但是误以为已经修改修改了数据,所以用 JSON 进行深拷贝即可。
解决办法:
edit(row){
//JSON.parse(JSON.stringify(row)) 深拷贝
this.$data.contract=JSON.parse(JSON.stringify(row))
}