一.在Vue2.x中,给对象加属性和删除属性,响应式会检测不到,无法动态的渲染在页面中
data(){
return:{
person:{
name:'zs',
habby:['学习','吃饭']
}
}
}
methods:{
//向对象中添加属性
this.preson.sex="女"
//改数组
this.person.habby[0]="逛街"
}
上面的代码虽然给对象添加属性和修改数组都可以加进去,但是在页面是不能动态显示出来
二.解决方法
1.对于对象的操作
增加:
方法一:this.$set(this.person,"sex","女")
方法二:import Vue from 'vue'
Vue.$set(this.person,"sex","女")
删除:
方法一:this.$delete(this.person,"name")
方法二:同上
2.对数组的操作
该数组:
方法一:this.$set(this.person.habby,0,"逛街")
方法二:同上
方法三:this.person.habby.splice(0,1,"逛街")
splice(开始的索引,删除数量,切换的内容)