乐趣区

Vue中的set的使用

vue 实例创建之后添加新的属性到实例上,它不会触发视图更新

当生成 vue 实例后,当再次给数据赋值时,有时候并不会自动更新到视图上去;
子组件的 props 数据不能与父组件传递的值实时保持一致。

data () {

return {
    student: {
        name: '',
        sex: ''
    }
}

}

mounted () {

this.student.age = 24

}

使用 $set() 方法,既可以新增属性, 又可以触发视图更新。

受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。

Vue.set(object, key, value)
this.$set(this.data,”key”,value’)
this.$set(this.student,”age”, 24)

退出移动版