Vue prop传一个对象给子组件,怎么避免子组件修改数据污染父组件?

如题所述

第1个回答  2022-06-07
实现点击修改表格信息,弹出对话框(子组件)修改本行数据,但是由于prop传的是一个对象,每次在对话框里修改的同时,父组件表格里的数据也会跟着改变。

看到了vue文档里的这句话:

引用数据类型中,前三者都是保存在变量对象中,而对象和数组保存在堆内存中,操作的只是他们的引用

用prop传递对象和数组时都会出现这种污染的情况,我的解决方法是在定义数据是把内部的数据单个重新定义一下,然后再赋值,适用于数据量较小的对象