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>
相关推荐
再吃一根胡萝卜2 小时前
不改一行官方源码:用一个插件把 DeepSeek Harness 换成「平安one」
前端
西安小哥2 小时前
做 Agent 写到第三个小时,我开始给它算账
javascript
西安小哥2 小时前
让大模型操作浏览器跑了两周,我发现瓶颈根本不在模型
javascript
涛涛ing2 小时前
2026年,你选的不再是框架,是渲染模型
前端
AiMan2 小时前
Perplexity还是不可导出左侧所有对话,只能单条内容,方法不对吗
前端
FungLeo2 小时前
成为全栈·Vue 管理后台篇·Vue Query:服务端数据缓存、query key与变更失效
vue.js·数据获取·前端缓存·前端状态管理·tanstack query·vue query
用户298698530142 小时前
用 Python 自动化把 JavaScript 代码转换为 Word 文档
javascript·python·api
学以智用3 小时前
正则表达式完整参考手册(JavaScript 版,兼容绝大多数语言)
javascript
AiMan3 小时前
千问生成的内容能否下载吗?
前端
北城笑笑3 小时前
Vue 109 ,从零搭建 Vue3 + Electron 工程:生态、安全桥接与打包选型( Vue + Electron )
前端·javascript·vue.js·安全·electron·vue