【Vue3】在Vue3中使用reactive定义的响应式失效

2023-11-20

【Vue3】在Vue3中使用reactive定义的响应式失效



【Vue3】在Vue3中使用reactive定义的响应式失效

     在写项目的时候踩的坑,我使用reactive定义一个响应式数组的时候,当网络请求返回数据直接赋值给数组之后,页面的数据并没有发生改变。下面是响应式失效的情况

let areaTree:Array<IareaTree> = reactive([])
let getData = async () => {
      let res = await request({
        url: "/list-total",
        method: "GET",
      });
      areaTree = res.data.areaTree
 }

后面查出原因:

直接把一个新的数组赋值给areaTree,导致reactive声明的响应式对象由areaTree代理,被新的数组所替代,因为在操作代理对象的时候需要有代理对象作为前提,所以失去了响应式,在vue3中不管是对象还是数组都不能直接将整个数据进行赋值,这样会造成reactive定义的响应式失效


解决办法:

1.使用ref函数

2.创建一个reactive对象,对象的属性是数组,在return的时候使用toRefs对响应式对象进行处理

3.使用数组的方法,如push


总结

以上就是今天要讲的内容,希望对大家有所帮助!!!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Vue3】在Vue3中使用reactive定义的响应式失效 的相关文章

随机推荐

  • M1 macbook上安装docker 编译内核 并使用qemu启动内核。

    一 编译内核并通过qemu启动内核 1 在M1上安装docker这个就不用提供步骤了 网上自行搜索 2 在M1上pull一个ubuntu的容器 docker pull ubuntu 18 04 docker images REPOSITOR
  • 卡尔曼滤波及其MATLAB程序

    今天写了个卡尔曼滤波的小程序 希望对有需要的同学有点帮助 卡尔曼滤波是一个很常用的滤波算法 与维纳滤波相比有很多长处 这里我们把Kalman Filter简称为KF KF的基本思想是 采用信号 噪声 状态空间模型 利用前一时刻的状态最优估计
  • 学习python笔记01

    一 python是什么 人生苦短 我用python python是一门解释型语言 边解释边运行 与编译型语言的区别是 编译型语言是先编译后运行 python语言的特点 1 优雅 2 明确 3 简单 python是一个完全面向对象语言 具有强
  • 纯java实现相片转素描

    1 实例演示图片转素描效果 首先我们来看一下具体的效果 在项目中添加依赖
  • unity制作一个可以自由滑动收缩的历史记录功能。

    公司在做一款模拟经营类的卖车游戏 需要一个简单的历史记录功能 放在左上角 记录最近20条的收入 支出记录 超过2秒不动则收起 收起时展示最近的一个消息记录 用到的组件是ScrollView 使用方法可以参考我写过的一篇博客 ScrollVi
  • Input.GetAxis _ Unity3d

    Input GetAxis 获取轴 static function GetAxis axisName string float Description描述 Returns the value of the virtual axis iden
  • 【论文精读】时序逻辑应用之模型预测控制Model Predictive Control with Signal Temporal Logic Specifications

    前言 因为天天写代码实在是太枯燥了 所以读点其他东西来调剂一下 这样科研进度不至于停下 前面读了几篇关于时序逻辑学习的文章 今天来了解一下时序逻辑公式在控制中的应用 Raman V Donze A Maasoumy M Murray R M
  • Android Studio编译失败问题(aapt2)

    Android Studio 3 1编译时出错 org gradle api tasks TaskExecutionException Execution failed for task app mergeDebugResources at
  • 心灵鸡汤

    心灵鸡汤 比尔盖茨不想弯腰去捡100美金 浪费了1秒 时间是最宝贵 有限的时间资源最大化 如果你不够优秀 人脉是不值钱的 它不是追求来的 而是吸引来的 只有等价的交换 才能得到合理的帮助 虽然听起来很冷 但这是事实 与凤凰同飞 必是俊鸟 与
  • AESCBCUtil

    import javax crypto Cipher import javax crypto spec IvParameterSpec import javax crypto spec SecretKeySpec import org ap
  • 面试必问的 CAS ,要多了解

    前言 CAS Compare and Swap 即比较并替换 实现并发算法时常用到的一种技术 Doug lea大神在java同步器中大量使用了CAS技术 鬼斧神工的实现了多线程执行的安全性 CAS的思想很简单 三个参数 一个当前内存值V 旧
  • 结构体中数组放在最后位置的问题

    以下出自 C Programming FAQS 先看下面的代码 struct name int namelen char namestr 1 struct name makename char newname struct name ret
  • GDAL多光谱与全色图像融合简单使用

    目录 简述 C 代码 效果对比 GDAL融合效果和原始多光谱波段对比 GDAL融合效果和原始全色波段对比 ARCGIS融合效果与原始全色和多光谱对比 GDAL融合效果与ArcGIS融合效果对比 简述 最近在GDAL的代码中看见了gdalpa
  • 毕业设计e4a代码

    事件 主窗口 创建完毕 用来设置该窗口控件的属性 比如说该窗口的标题 该窗口的背景颜色 该窗口的背景图片 按键的标题设置 标签1 背景颜色 无色 标签1就是设备未使用 标签2 背景颜色 无色 标签2就是推出系统 标签1 可用 假 禁止标签使
  • STM32第二天之外部中断及系统定时器

    1 中断优先级 1 在 NVIC 有一个专门的寄存器 中断优先级寄存器 NVIC IPRx 用来配置外部中断的优先级 IPR 宽度为 8bit 原则上每个外部中断可配置的优先级为 0 255 2 数值越小 优先级越高 在 F103 中 只使
  • OpenWrt添加软件包(一)

    本文参考https wiki openwrt org zh cn doc devel packages http blog csdn net teddy99999 article details 17537545 OpenWrt是一个比较完
  • 用Python做一款简单的打字速度测试

    现在大家一定知道很多打字测试软件吧 例如金山打字通 今天 我们也自己制作一款打字速度测试软件吧 分析 1 导入库 创建打字对象 2 选取句子 输入 3 记录时间 4 打印结果 如是否有错别字 用时 1 导入库time random date
  • java代码_动态编译 Java 代码以及生成 Jar 文件

    导读 最近在看 Flink 源码的时候发现到一段实用的代码 该代码实现了 java 动态编译以及生成 jar 文件 将其进行改进后可以应用到我们的平台上 实现在平台页面上编写 java 代码语句 提交后由后台进行编译和打成 Jar 包再上传
  • linux 启动springboot项目脚本

    此脚本可以重启 启动 停止等 仅需要传参即可 bin bash 这里可替换为你自己的执行程序 其他代码无需更改 APP NAME test jar cd dirname 0 使用说明 用来提示输入参数 usage echo Usage sh
  • 【Vue3】在Vue3中使用reactive定义的响应式失效

    Vue3 在Vue3中使用reactive定义的响应式失效 文章目录 Vue3 在Vue3中使用reactive定义的响应式失效 Vue3 在Vue3中使用reactive定义的响应式失效 后面查出原因 解决办法 总结 Vue3 在Vue3