Reactive: Vue3数据更新但是表单没有更新

这两天在折腾前端, 因为前端基础不牢靠, 所以,通常都是猜一半, 查一半, 基本上也就是个面向百度编程。

过程中碰到了一个问题, 就是在编辑table的时候, 明明我把pinia的数据缓存更新了, 但是table的数据却没有更新, 其他地方也差不多是这样, 打印了各种log, 结果发现数据确实更新了, 然后随便更新下代码, 更新内容才会同步。

在网上搜罗了很久, 然后找到了问题的关键, 就是对reactive的理解有误差。

我是这么写对象引用的, 以及更新对象的

复制代码
const obj = reactive({})
const obj1 = {}
obj = obj1

然后obj确实更新了, 但是表单内容却没有刷新。

查询了下, 人家的对象引用都是这么写的

复制代码
const obj = reactive({data: {}})
const obj1 = {}
obj.data = obj1

然后这样写就能成功刷新表单。

大概的意思就是reactive是对对象的引用, 然后监听的也是对象内的属性, 只有更新了相关属性, 才能触发响应式。

整个的操作有点类似于其他语言的指针的样子, 对某个对象加了监听, 然后把这个对象的指针指向了其他的地方, 但是原来的那个对象的属性依然没有改变, 所以就触发不了事件。

其实是很基础的东西, 仔细看看文档也能懂, 但恰恰现在已经浮躁到根本都不想好好看文档了。

相关推荐
用户新36 分钟前
V8引擎 精品漫游指南--Ignition篇(中) AST详解 字节码的生成
前端·javascript
岱宗夫up1 小时前
【前端基础】HTML + CSS + JavaScript 基础(三)
开发语言·前端·javascript·css·html
蓝帆傲亦2 小时前
Vue.js 大数据处理全景解析:从加载策略到渲染优化的完全手册
前端·vue.js·flutter
SuperEugene2 小时前
字符串处理实战:模板字符串、split/join、正则的 80% 用法
前端·javascript·面试
Highcharts.js2 小时前
图表学习|基于highcharts创建子弹图表,以及子弹图的应用与扩展设计
javascript·信息可视化·highcharts·图表开发·子弹图表·kpi图
巴巴博一2 小时前
【前端架构实战】拒绝切 Tab 白屏!纯手写 Vue/uni-app 多标签页“零延迟缓存”列表架构
前端·vue.js·架构
rfidunion14 小时前
springboot+VUE+部署(12。Nginx和前端配置遇到的问题)
前端·vue.js·spring boot
vx-Biye_Design14 小时前
servlet家政公司管理系统-计算机毕业设计源码01438
java·vue.js·spring·servlet·tomcat·maven·mybatis
FYKJ_201015 小时前
springboot大学校园论坛管理系统--附源码42669
java·javascript·spring boot·python·spark·django·php
Highcharts.js18 小时前
数据之美:用Highcharts打造专业级弧线图
javascript·数据库·highcharts·图表开发·弧线图