在我们使用vue进行开发的过程中,可能会遇到一种情况:当生成vue实例后,再次给数据赋值时,有时候并不会更新到视图上,如下所示:
data () {
return {
list: [
{ name: "zhangsan", id: "1" },
{ name: "lisi", id: "2" },
{ name: "wangwu", id: "3" }
],
student: {
name: '',
sex: ''
}
}
}
mounted () { // ——钩子函数,实例挂载之后
this.items[0] = { name:'one',id:'4'} //此时对象的值更改了,但是视图没有更新
let art = {name:'one',id:"4"}
this.$set(this.items,0,art) //$set 可以触发更新视图
this.student.age = 24 //此时对象的值更改了,但是视图没有更新
this.$set(this.student,"age", 24) //$set 可以触发更新视图
}