Skip to content
On this page

Vue.$set

$set是Vue.js中的一个方法,用于在响应式对象上设置一个新的属性或更新现有属性的值。它的原理是通过调用Object.defineProperty方法来将新属性添加到对象中,并将其设置为响应式的。这意味着当新属性被添加或现有属性的值被更新时,Vue.js会自动更新视图以反映这些更改。

具体来说,$set方法会检查对象是否已经是响应式的。如果对象不是响应式的,则会将其转换为响应式对象。

以下是一个示例,展示了如何使用$set方法向Vue.js的响应式对象中添加一个新属性:

javascript
// 创建一个Vue实例
var vm = new Vue({
  data: {
    user: {
      name: 'John'
    }
  }
})

// 使用$set方法向user对象中添加一个新属性
vm.$set(vm.user, 'age', 30)