Vue3 重置&覆盖 reactive 数组数据的方法

核心要点:
  • 通过splice删除原数组内的所有数据,并添加新的数据进去。
  • 潜在影响:大数据量下,splice重置数组和 ref 的.value重新赋值重置数组,哪个耗时短还需自行测试。

通过 `splice` 传入0 和 Infinity 来删除原数组从头到尾的内容,然后`...[]`将新数据丢进响应式数组里。

html 复制代码
<template>
  <button @click="c2()">测试按钮</button>
</template>

<script setup lang="ts">
import { reactive, watch } from 'vue'
const arr1 = reactive([1,2,3,4])
watch(arr1,(val)=>{
  console.log(...val);
})
function c2() {
  arr1.push(arr1.length+1)
}

setTimeout(() => {
  arr1.splice(0,Infinity,...[11,22,33,44])
}, 6000);

</script>
相关推荐
程序员小寒14 小时前
【无标题】
前端·css·面试·css3
蒙面价肥猫14 小时前
Flex布局-彻底掌握 flex-grow / flex-shrink / flex-basis
前端·css·css3
DsirNg14 小时前
上一个封装hooks涉及的知识学习路线
前端·javascript·typescript
遇到困难睡大觉哈哈14 小时前
Harmony os ArkTS 卡片生命周期管理:我怎么把 EntryFormAbility 用顺手的
前端·harmonyos·鸿蒙
凌览14 小时前
女朋友换头像比翻书快?我3天肝出一个去水印小程序
前端·后端·面试
IT_陈寒14 小时前
3个90%开发者都误解的JavaScript原型陷阱:从proto到class的深度剖析
前端·人工智能·后端
9***446314 小时前
Spring 核心技术解析【纯干货版】- Ⅶ:Spring 切面编程模块 Spring-Instrument 模块精讲
前端·数据库·spring
tsumikistep14 小时前
【前端】md5 加密算法
前端
拾忆,想起15 小时前
Dubbo服务调用失败调试指南:从问题定位到快速修复
前端·微服务·架构·dubbo·safari
Json____15 小时前
uni-app-数码购物商城h5手机端-前端静态网页
前端·uni-app·商城