vue引用传递

工作中遇到了一个古怪的bug,将一个变量赋值给一个新的变量,新变量在变化的时候会导致旧变量跟随变化,从而导致页面问题。

原因是:
在vue中,数组和对象传递都是引用传递。赋值时传递的并不是值,而是指向了同一个空间。直接赋值,只是地址指向,两个对象使用相同的地址,左边的变量指向的地址和右边的变量一样,持有相同的引用,所以对newObj修改,oldObj的值也会变化。

解决方法:
JSON字符串化再转化;
...扩展运算符

非常感谢这位大佬的解决方法:地址如下
原文地址

posted @ 2024-04-19 16:10  圆子同学  阅读(26)  评论(0)    收藏  举报