Vue中解决对象内存地址一致的几种方案
温馨提示:本文最后更新于2021年5月31日 17:33,若内容或图片失效,请在下方留言或联系博主。
在开发vue项目中,经常会遇到内存地址一样的问题,导致修改这里,另一处同时发生改变
解决方案:
1、利用JSON方法(极其不推荐,会丢失属性,例如函数、undefined)
let obj = {}
let newObj = JSON.parse(JSON.stringify(obj))
2、深拷贝
有兴趣可以阅读博客这篇文章。
3、利用Object.assig方法
export default {
data() {
return {
test: {}
}
},
methods: {
change(obj) {
this.test = Object.assign({}, obj)
}
}
}
4、利用对象展开运算符
let obj1 = {
a: 1,
b: 2
}
let obj2 = {...obj1}