开发避坑指南(27):Vue3中高效安全修改列表元素属性的方法

需求

Vue3 中如何遍历list并修改list元素的属性的值?

解决办法

1、‌使用 map 方法‌

vue 复制代码
const newList = list.value.map(item => {
  return {
    ...item,
    modifiedProperty: 'newValue' // 修改的属性名称和属性值
  }
})

Vue 中的 map() 函数是 JavaScript 数组的高阶函数,主要用于遍历数组并返回新数组,常用于数据处理和响应式更新。

特点‌:不修改原数组,返回处理后的新数组。

典型场景‌:转换数据格式、修改元素属性的值或提取特定属性。

...item 包含两个关键部分:

item‌:代表列表渲染 (v-for) 中当前遍历的元素,它是数组或对象迭代项的别名变量。

示例:v-for="item in items" 中,item 是数组 items 的单个元素可通过 item.属性名 访问具体数据(如 item.id

...(展开运算符)‌:‌作用‌是将 item 对象的所有属性展开为新对象的属性。

2、‌使用 forEach()方法‌

使用 forEach()函数 直接修改原数组。在 Vue 中,forEach() 是 JavaScript 数组的原生方法,用于遍历数组元素并执行回调函数,但不会返回新数组。

vue 复制代码
list.value.forEach(item => {
	item.oid=null;//将list元素的oid属性设置为null
});

基础语法:

vue 复制代码
array.forEach((item, index, arr) => {
  // 操作逻辑
})

‌参数说明‌:

item:当前遍历的元素

index(可选):当前元素的索引

arr(可选):原数组本身

相关推荐
腻害兔8 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
不好听6138 小时前
从一行 JSX 到屏幕像素:前端开发者必须懂的浏览器渲染管线
前端
恒拓高科WorkPlus8 小时前
企业级内网即时通讯建设模型:BeeWorks内网IM四层架构
前端
前端小李子9 小时前
前端环境变量裸奔?我用 EnvShield 给它穿了件防弹衣
前端
youtootech9 小时前
HarmonyOS《柚兔学伴》项目实战25-我的页面、Web 嵌入与项目总结
前端·华为·harmonyos
小林ixn9 小时前
从零到一理解 React 父子组件通信:手写一个 Todo 应用带你彻底搞懂单向数据流
前端·javascript·react.js
醇氧10 小时前
CountDownLatch / CyclicBarrier / Semaphore 面试高频问答清单
前端·面试·职场和发展
qetfw12 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
甲维斯12 小时前
我要开始吹牛逼了!Kimi K3 “宇宙无敌”!
前端·人工智能