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

vue开发中常用方法笔记

this.$set()

在 Vue.js 2.x 中,this.$set 是用于解决响应式系统限制的核心 API,特别是在处理动态数据结构和第三方 API 返回数据时尤为重要。

1.对象属性动态添加

this.userProfile.age = 27  //  错误方式(不会触发更新)

this.$set(this.userProfile, 'age', 27) // 正确方式

2.数组元素修改

this.items[index] = newValue  // 错误方式(不会触发更新)

this.$set(this.items, index, newValue) // 正确方式

底层原理:

Vue 2 使用 Object.defineProperty 实现响应式,初始化时对已有属性创建 getter/setter,新增属性无法自动获得响应性,直接通过索引修改数组元素无法被检测

this.$set 内部会:检测目标类型(对象/数组),对对象使用 Vue.set 添加响应式属性

,对数组使用 splice 方法触发更新,通知依赖进行重新渲染

替代方案:

this.userProfile = Object.assign({}, this.userProfile, { age: 27 })

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

相关文章:

  • springboot3+vue3融合项目实战-大事件文章管理系统-登录优化redis
  • Vue3和React中插件化设计思想
  • YOLO11解决方案之速度估算探索
  • LaTeX中所有数字都应该在数学环境中吗?
  • Python项目中的文件夹命名和结构设计建议
  • JavaScript的三大核心组成:ECMAScript、DOM与BOM
  • WebGL开发技巧
  • 一些Dify聊天系统组件流程图架构图
  • Idea如果有参数,怎么debug
  • Grafana XSSOpenRedirectSSRF漏洞复现(CVE-2025-4123)
  • 一键生成专业流程图:Draw.io与AI结合的高效绘图指南
  • 生成式 AI:解锁人类创造力的智能引擎
  • 图解深度学习 - 特征工程(DL和ML的核心差异)
  • JavaScript篇:解密ES6的“藏宝图“:Set和Map的奇妙冒险
  • Don’t Shake the Wheel 论文阅读
  • PycharmFlask 学习心得2:路由
  • 中国软件行业 2024 年度分析报告
  • AI时代的弯道超车之第二十章:哪些工作AI是替代不了的
  • AtCoder Beginner Contest 406(ABCD)
  • 大疆制图跑飞马D2000的正射与三维模型
  • 在 Docker 中启动 Jupyter Notebook
  • 功能强大且易于使用的 JavaScript 音频库howler.js 和AI里如何同时文字跟音频构思想法
  • 【羊圈——状压 + DP / 记忆化搜索DP】
  • 【办公类-18-06】20250523(Python)“口腔检查涂氟信息”批量生成打印(学号、姓名、学校、班级、身份证、户籍、性别、民族)
  • 冒泡排序:轻松理解与实现
  • 新能源汽车产业链图谱分析
  • python学习day2:运算符+优先级
  • 【沉浸式求职学习day47】【JSP详解】
  • Java—— 网络爬虫
  • Redis 8.0 新增数据结构深度解析:从核心功能到生态重构