鸿蒙开发 数组改变,ui渲染没有刷新

server/2024/10/18 16:52:59/

问题描述:
数组push, 数组长度改变,ui也没有刷新
打印出了数组 console.log(this.toDoData.map(item => `${item.name}`).join(', '), this.toDoData.length)
在这里插入图片描述
原代码:

        Text('+').fontSize(36).margin({ right: 40 }).onClick(() => {TextPickerDialog.show({ // 文字选择弹窗range: this.availableThings,onAccept: (item:TextPickerResult) => {// 这里有点问题,数组新增 ui没有刷新let obj:ToDo = new ToDo(`${item.value}`)this.toDoData.push(obj)console.log(this.toDoData.map(item => `${item.name}`).join(', '), this.toDoData.length)}})})List({ space: 10 }){ForEach(this.toDoData, (toDoItem:ToDo) => {ListItem(){ToDoListItem({toDoItem: toDoItem,})}},(toDoItem: ToDo) => toDoItem.key.toString())}

这个问题和列表渲染的key有关系,也就是(toDoItem: ToDo) => toDoItem.key.toString()这段代码除了问题,这个key有可能重复,于是做了以下修改:

        List({ space: 10 }){ForEach(this.toDoData, (toDoItem:ToDo, i:number) => {ListItem(){ToDoListItem({toDoItem: toDoItem})}},// 这里删除或者重新渲染key,使其不重复即可刷新列表// (toDoItem: ToDo) => toDoItem.key.toString()(i: number) => i.toString() )}

http://www.ppmy.cn/server/107911.html

相关文章

遥感多模态基础大模型汇总-实时更新

本文内容来自下面链接,考虑到很多同学登录不了,故在此平台进行分享。 遥感基础大模型 Table of Contents ModelsRemote Sensing Vision Foundation Models 遥感视觉基础模型Remote Sensing Vision-Language Foundation Models 遥感视觉语言基础模型Rem…

线程面试题

1.JDK自带的线程池有哪些? 2.线程池中核心线程数与最大线程数与缓冲任务队列的关系? 先使用核心线程执行任务。 当核心线程不足时,新任务入队列等待。 当队列满且线程数未达最大值时,增加非核心线程执行任务。 当队列满且线程…

【STM32】FMC

FMC功能与FSMC类似,但比FSMC更强大,但仅在F4 / F7 / H7等高级一点的MCU上支持,F1不支持。虽然我的是F103,但顺便都看了。 大部分图片来源:正点原子HAL库课程 专栏目录:记录自己的嵌入式学习之路-CSDN博客 目…

网络配置管理:自动化的艺术与实践

标题:“网络配置管理:自动化的艺术与实践” 在当今快速变化的技术环境中,网络配置管理已成为确保网络稳定性、安全性和效率的关键。网络配置管理是指使用自动化工具和流程来控制网络设备的配置,以减少人为错误、提高效率并确保一…

如何使用ssm实现基于VUE的新闻类网站+vue修改完的

TOC ssm272基于VUE的新闻类网站vue修改完的 系统概述 进过系统的分析后,就开始记性系统的设计,系统设计包含总体设计和详细设计。总体设计只是一个大体的设计,经过了总体设计,我们能够划分出系统的一些东西,例如文件…

如何在没有密码的情况下从 iPad 中删除 MDM?100% 工作

如果您遇到已使用远程管理锁恢复的 iPad 或 iPhone,您将需要远程管理器的登录信息。 从 iPad 中删除 MDM可能很困难,尤其是在您没有正确的权限的情况下。在寻求帮助时,许多客户访问 Apple 的官方论坛,却发现问题并不总是容易解决。…

裸金属机的算力共享支持怎么实现

目录 裸金属机的算力共享支持怎么实现 一、技术架构 二、资源调度 三、安全保障 四、应用场景适配 裸金属机通过ssh实现远程调度 1. SSH配置 2. 远程登录 3. 远程命令执行 4. 自动化脚本 5. 安全注意事项 裸金属机的算力共享支持怎么实现 裸金属机的算力共享支持实…

区块链(币圈)常用网址大全

交易所 中心化交易所 币安(Binance):https://www.binance.com/ Coinbase Exchange:https://www.coinbase.com/ Bybit:https://www.bybit.com/ 欧意(OKX):https://www.okx.com/ …