当前位置: 首页 > news >正文

this.$set() 的用法详解(Vue响应式系统相关)

1. 什么是 this.$set()

this.$set(target, key, value) 是 Vue 2 中提供的一个方法,用于向响应式对象中动态添加属性,确保新加的属性同样是响应式的。 

2. 为什么需要它?

Vue 2 的响应式系统基于 Object.defineProperty,它只能检测到对象已有属性的变化,无法检测新增的属性。 

data() {return {user: {}}
},
methods: {addProp() {this.user.name = 'fang'; // 直接赋值不会触发视图更新}
}

 这样写,不会触发视图更新,因为 user 对象一开始没有 name 属性。

3. 正确用法:
 

this.$set(this.user, 'name', 'fang');

 4. 具体示例:

export default {data() {return {info: {}}},methods: {addInfo() {this.$set(this.info, 'age', 30);// 或者Vue.set(this.info, 'age', 30); // 组件外用Vue全局对象调用}}
}

5. Vue 3 情况

Vue 3 使用 Proxy 实现响应式,天然支持新增属性的响应式,不需要 $set

http://www.xdnf.cn/news/892783.html

相关文章:

  • Perforce ALM产品简介:一站式需求与测试管理平台(已通过SO 26262认证)
  • PaddleOCR(3):PaddleOCR命令讲解
  • OpenBayes 一周速览|TransPixeler 实现透明化文本到视频生成;统一图像定制框架 DreamO 上线,一键处理多种图像生成任务
  • Win10、Win11系统,使用谷歌浏览器文件流下载,C盘剩余容量小于4GB时,下载失败问题
  • 记一个判决书查询API接口的开发文档
  • 深入解析C++五大常用设计模式:原理、实现与应用场景
  • python变量
  • 技术文章大纲:如何利用DeepSeek提升工作效率
  • x86 汇编中的【条件跳转指令】:从基础到扩展的全面解析(查表版)
  • Dify 本地部署详细指南(Windows 11 系统)
  • 【Linux】可重入函数 volatile SIGHLD信号
  • 线程的基础知识
  • 深入理解 Spring IOC:从概念到实践
  • 企业级AI迈入黄金时代,企业该如何向AI“蝶变”?
  • 08_10小结
  • Tensorborad
  • Android Test2 获取系统android id
  • 8086寻址解剖图:7种武器解锁x86内存访问的基因密码
  • Simplicity studio SDK下载和安装,创建工程
  • 使用 DuckLake 和 DuckDB 构建 S3 数据湖实战指南
  • 在表单输入框按回车页面刷新的问题
  • 使用 minicom 录制串口报文并回放
  • 【YOLO 系列】基于YOLO的飞机表面缺陷智能检测系统【python源码+Pyqt5界面+数据集+训练代码】
  • 掌握YOLOv8:从视频目标检测到划定区域统计计数的实用指南
  • 图简记。。
  • 深度解析数字营销专属大模型 AdLLM 的训练思路
  • 【学习笔记】Lamba表达式[匿名函数]
  • 搜索子字符串的思路与算法分享
  • 类似东郊到家app系统源码开发
  • 《神经渲染变局:高斯泼溅能否改写NeRF规则》