解决思路是深拷贝,但不知道大家有是怎么做的,蹲一个优雅实践!
VUE2的时候官方示例是用计算属性来解决,但是我在VUE3中这样做:
const childredObj = ref(computed(() => {return props.fatherObj}))
子组件修改childredObj还是会影响到父组件里fatherObj的值!
直接这么写也不行:
const childredObj = ref(props.fatherObj})
有效的办法是JSON.parse(JSON.stringfy(props.fatherObj)),但感觉不够优雅。。。
或者直接写个deep copy的方法拿来用?不知道VUE3有没有提供官方解决方法?
回答:似乎只能深拷贝,但 JSON.parse 和 JSON.stringfy 的方式具有缺陷,要注意。
