今天在写功能时用到双向数据绑定,需求是往一个数组里push一个viewModel,当push新的数组时,数组的最后一个元素将取消双向数据绑定
方法一
通过json转换的方式,用JSON,对对象进行深拷贝。先上代码
this.viewModel ={data:11 }
let obj = JSON.parse(JSON.stringify(this.iewModel));
当改变viewModel时,obj将不会变化
原理:其实是通过json之间的解析 创建的临时变量,不会随this.formValidate
改变而改变。 其中parse
和stringfy
两个函数是json与字符串之间数据结构转变的函数
2.// 使用lodash工具库的_.cloneDeep()
let obj = _.cloneDeep(this.viewModel)