千家信息网

vue如何清空数组

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下vue如何清空数组,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1. 前言前两天在工作当中遇到一个问题,
千家信息网最后更新 2026年11月03日vue如何清空数组

小编给大家分享一下vue如何清空数组,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

    1. 前言

    前两天在工作当中遇到一个问题,在vue3中使用reactive生成的响应式数组如何清空,当然我一般清空都是这么写:

      let array = [1,2,3];  array = [];

    不过这么用在reactive代理的方式中还是有点问题,比如这样:

    let array = reactive([1,2,3]);    watch(()=>[...array],()=>{      console.log(array);    },)    array = reactive([]);

    很显然,因为丢失了对原来响应式对象的引用,这样就直接失去了监听。

    2. 清空数据的几种方式

    当然,作为一名十年代码经验常年摸鱼的我,立马就给出了几个解决方案。

    2.1 使用ref()

    使用ref,这是最简便的方法:

    const array = ref([1,2,3]);    watch(array,()=>{      console.log(array.value);    },)    array.value = [];

    2.2 使用slice

    slice顾名思义,就是对数组进行切片,然后返回一个新数组,感觉和go语言的切片有点类似。当然用过react的小伙伴应该经常用slice,清空一个数组只需要这样写:

    const array = ref([1,2,3]);    watch(array,()=>{      console.log(array.value);    },)    array.value = array.value.slice(0,0);

    不过需要注意要使用ref。

    2.3 length赋值为0

    个人比较喜欢这种,直接将length赋值为0:

    const array = ref([1,2,3]);    watch(array,()=>{      console.log(array.value);    },{      deep:true    })   array.value.length = 0;

    而且,这种只会触发一次,但是需要注意watch要开启deep:

    不过,这种方式,使用reactive会更加方便,也不用开启deep:

    const array = reactive([1,2,3]);    watch(()=>[...array],()=>{      console.log(array);    })    array.length = 0;

    2.4 使用splice

    副作用函数splice也是一种方案,这种情况同时也可以使用reactive:

    const array = reactive([1,2,3]);    watch(()=>[...array],()=>{      console.log(array);    },)    array.splice(0,array.length)

    不过要注意,watch会触发多次:

    当然也可以使用ref,但是注意这种情况下,需要开启deep:

    const array = ref([1,2,3]);    watch(array,()=>{      console.log(array.value);    },{      deep:true    })    array.value.splice(0,array.value.length)

    但是可以看到ref也和reactive一样,会触发多次。

    以上是"vue如何清空数组"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

    数组 方式 篇文章 内容 情况 方案 问题 简便 顾名思义 不怎么 不用 个人 函数 前言 副作用 同时 大部分 对象 小伙 小伙伴 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广东猪兼强互联网科技有限公司 互联网科技公司经营范围 新华互联网科技学校 易通互联网络科技有限公司 有木互联网科技 互联网 新科技 互联网科技股有哪些 江苏南京365互联网科技 福州新华互联网科技学校 知乎 随着互联网科技发展 互联网媒体平台算高科技产业 洛阳共同富裕互联网科技有限公司 阿里互联网科技企业 互联网科技公司营业执照怎么办理 互联网科技融合创新 卡尔迅互联网科技有限公司 互联网高科技行业有哪些企业 互联网时代高科技布局 北京瑞云互联网科技有限公司 中国主要互联网科技公司 百单网互联网科技有限公司 科技互联网公司装修 北京互联网络科技有限公司 远拓互联网科技 互联网科技汛 中国的互联网科技企业的崛起 承德科技产业互联网发展 2021互联网科技公司排名 保山互联网科技靠谱吗 马化腾互联网科技教学
    0