场景:
在data()内定义了dataA
data() {
return {
option:{value:0}
}
};
在method()内使用dataA进行赋值,发现问题
let a = option
a = {value:1}
let b = option
console.log(a.value)//返回1
console.log(b.value)//返回1
原因:
这是一个引用传递而不是值传递
参考:Vue爬坑:把对象中的数据给了某个变量,改变一个对象的值,另一个对象也变化的解决办法!
深究:
深拷贝和浅拷贝
存一下,后面有时间要仔细学习