vue将对象新增的属性添加到检测序列
来源:互联网 发布:b2c商城系统源码 编辑:程序博客网 时间:2024/05/29 03:53
vue中将对象中新增的属性增加到检测序列中
deepCopy(o1, o2) { // 将o2的内容拷贝给data中的o1 var key, i if (o2 instanceof Array) { for (i = 0; i < o2.length; i++) { if (o2[i] instanceof Array) { this.$set(o1, i, []) this.deepCopy(o1[i], o2[i]) } else if (o2[i] instanceof Object) { this.$set(o1, i, {}) this.deepCopy(o1[i], o2[i]) } else { this.$set(o1, i, o2[i]) } } } else if (o2 instanceof Object) { for (key in o2) { if (o2[key] instanceof Array) { this.$set(o1, key, []) this.deepCopy(o1[key], o2[key]) } else if (o2[key] instanceof Object) { this.$set(o1, key, {}) this.deepCopy(o1[key], o2[key]) } else { this.$set(o1, key, o2[key]) } } } else { o1 = o2 }}
由于 Vue 不允许动态添加根级响应式属性,所以你必须在初始化实例前声明根级响应式属性,哪怕只是一个空值
如果一个属性没有事先声明,后面再增加,他不能检测到变化,对于一些固定的结构,是可以检测到变化的。比如我知道一个obj里面必然有key1、key2属性,我可以事先初始化。如果这些东西是动态的,我没法事先声明。后面再增加,vue没法检测到变化了。
这时将你已经在data中声明的变量和你要赋给这个变量的值作为参数传进该函数就行了
1 0
- vue将对象新增的属性添加到检测序列
- Vue之Vue.set动态新增对象属性
- 序列化类型的对象时检测到循环引用
- vue select当前value没有更新到vue对象属性
- java如何将一个序列化对象添加到压缩文件中
- vue检测对象和数组的变化
- 将对象的属性值追加到容器中
- list中对象的属性添加到数组中
- 将java对象序列化到本地
- 将对象添加到List集合中添加的是对象的引用
- webservice中的序列化时 检测到对象的循环引用
- 序列化类型为XX的对象时检测到循环引用。
- Linq查询中类型的转化以及序列化XXX对象时检测到循环引用
- 序列化类型为XX的对象时检测到循环引用
- 序列化类型为“×××的对象时检测到循环引用
- 序列化类型 System.Data.Entity.DynamicProxies 的对象时检测到循环引用
- EntityFramework 序列化类型为XX的对象时检测到循环引用
- EF提示“序列化类型为XXX的对象时检测到循环引用”
- JavaScript倒计时
- c++第四次上机实验
- c++实验4-项目6
- java对象拷贝之BeanUtils.copyProperties() 用法
- 浅谈进程与task_struct
- vue将对象新增的属性添加到检测序列
- HAWQ技术解析(十三) —— 资源管理
- c++作业4
- 数据结构Java实现01----算法概述
- spring隔离事物的几种级别
- JvaScript图片自动切换
- mysql安装 linux源码安装mysql5.6.22
- 《欢乐系列游戏》
- 1. Two Sum