• Lv0
    粉丝0

积分17 / 贡献0

提问4答案被采纳0文章0

在ArkTS开发过程中使用@State装饰HashMap,HashMap中发生的变化似乎并不能被观测到?

linyu 显示全部楼层 发表于 2024-3-13 11:05:30
【问题描述】
问题现象和发生的背景

我需要显示一个List,用户进行长按选中,选中时的ListItem要展示不同的UI,所以我使用HashMap来统计选中的Item,在build函数中判断hashmap.hasKey()来处理不同的渲染逻辑

相关的代码,截图,日志信息

fakename.png fakename.png fakename.png

我尝试过的解决方法和结果

尝试换成Map,直接就crash了,hashMap又检测不到变化



【运行环境】
硬件:开发者手机
DevEvoStudio版本:4.0
SDK版本:10
fakename.png
您尚未登录,无法参与评论,登录后可以:
参与开源共建问题交流
认同或收藏高质量问答
获取积分成为开源共建先驱

精彩评论2

linyu

沙发 发表于 2024-3-13 14:14:41
目前粗浅的解决方案是:重新构造一个hashMap,然后进行深拷贝,然后对this.selectNotes重新赋值,这样可以触发重新渲染,但是感觉性能就很烂。。。

s_hao

板凳 发表于 2024-3-18 14:46:54
是的,不过目前目前@State不支持HashMap观测,后续版本可能会有

Copyright   ©2023  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

返回顶部