问题:
在使用element表格的时候,在利用弹出对话框修改某行数据的时候,表格采用scope.row进行传值。但修改框数据变化的时候,表格相应行的数据同样改变。
原因:
row是Object对象类型,如果直接赋值的话,就变成了浅拷贝,复制的是地址,导致在表单中改变值的时候table中的数据也跟着改变,所以要进行深拷贝。
解决方法:
1进行深度拷贝:let row = JSON.parse(JSON.stringify(scope.row))
2根据后端的接口:根据scope.row.id 查询的信息,重新const {data:res} = await post() ; let row = res.data