Vue Compute() 未在反应式地图上触发
P粉127901279
P粉127901279 2024-03-27 10:36:32
[Vue.js讨论组]

我在最初为空的地图周围有一个反应性const map =reactive({});,以及一个计算,它告诉如果地图有一个键“key”:const mapContainsKeyCompulated = Computed(() => map.hasOwnProperty("key"))。当我更改地图时,计算结果不会更新。

我在这个问题上坚持了一天,并设法想出了一个演示该问题的最小示例:




我已经阅读了一堆 stackoverflow 答案和 Vue 文档,但我仍然无法弄清楚。

  • 为什么 mapContainsKeyCompulated 没有更新?
  • 如果反应式不“跟踪”向地图添加或删除键,为什么Map:{{map}}(第14行)更新得很好?
  • 当我用 array[] 替换 map{} 并将“hasOwnProperty”替换为“includes()”时,它工作正常。有什么不同?
  • 如何解决这个问题,而不需要使用丑陋的“watch”解决方案(其中“map.hasOwnProperty(key)”必须重复)?

编辑:正如 @estus-flask 提到的,这是 3.2.46 中修复的 VueJS 错误。

P粉127901279
P粉127901279

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号