vue中的this.$set()
时间: 2023-10-28 09:00:02 浏览: 110
this.$set() 是 Vue.js 提供的实例方法,用于在响应式对象中设置新的属性或修改已有属性的值。这个方法可以用来确保在 Vue 实例中动态添加或修改属性时,能够触发视图的更新。
使用 this.$set() 时,需要传入要操作的对象、要设置的属性名以及属性值作为参数。例如:
```javascript
this.$set(obj, 'property', value)
```
这样就会将对象 obj 中的 property 属性设置为指定的 value 值。如果 obj 是响应式的,那么 Vue 将会检测到这个改动,并立即更新相关的视图。
Vue.js 的响应式系统默认只会对已经创建的属性进行响应式处理,因此当需要动态添加新属性时,使用 this.$set() 方法是必要的。否则,新添加的属性将不会触发视图更新。
相关问题
vue中this.$set
在Vue中,如果我们想要在响应式对象中添加一个新的属性,我们需要使用Vue.set或this.$set方法来完成。这是因为Vue不能检测到对象属性的添加或删除(注意,这不适用于数组)。Vue.set方法的第一个参数是要添加属性的对象,第二个参数是属性名,第三个参数是属性值。
在这段代码中,this是指当前Vue组件的实例。$set是Vue实例的一个方法,用于向响应式对象中添加新属性。第一个参数item.channelConf是要添加新属性的对象,第二个参数'channelExtConf'是要添加的新属性的名称,第三个参数extObj是要添加的新属性的值。这样,我们就可以将extObj作为item.channelConf对象的一个新属性添加进去,并且该属性的值是响应式的。
vue中this.$set和vue.set的区别
this.$set 和 Vue.set 的区别在功能上是没有区别的,都是用来响应式地给对象添加一个属性的。区别在于使用场景,this.$set 主要用于在 Vue 实例中使用,而 Vue.set 可以用于任何的 Vue 实例或者非 Vue 对象。同时,this.$set 是实例方法,需要通过 Vue 实例的 $set 方法来调用,而 Vue.set 是静态方法,可以直接调用。
阅读全文