set与$set的区别
时间: 2023-11-04 21:18:56 浏览: 26
在Vue.js中,set和$set都是用来响应式地给对象添加属性的方法。它们的作用相同,但是使用方式略有不同。
set是全局方法Vue.set的别名,可以通过Vue.set或者在Vue实例中使用this.$set来调用。它的语法为Vue.set(target, key, value)或者this.$set(target, key, value)。其中,target表示目标对象,key表示要添加的属性名,value表示要添加的属性值。通过使用set方法,我们可以确保添加的属性是响应式的,即当该属性的值发生变化时,相关的DOM会自动更新。
$set是Vue实例的一个方法,可以通过this.$set来调用。它的语法为this.$set(target, key, value),与全局方法Vue.set相同。$set方法的作用也是给对象添加响应式的属性,但它只能在Vue实例的作用域内使用。当我们需要在Vue实例的方法中添加响应式属性时,推荐使用$set方法。
总之,set和$set的功能相同,都用于给对象添加响应式属性,但$set只能在Vue实例中使用,而set是全局方法,可以在任意地方使用。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [Vue.set()和vm.$set()方法及不足](https://blog.csdn.net/weixin_54307456/article/details/123611894)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [vue中 this.$set的用法详解](https://download.csdn.net/download/weixin_38589150/12937384)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]