HarmonyOS 关于@State或@Link 修饰Array的应用
现有一个数据Bean类型如下:
export class TagBean {
title: string = ""
id: string = ""
is_choose: boolean = false
}
用@State或@Link修饰该Bean的Array数组,如:@Link tagBeans: TagBean[]
目前发现一个问题,在List()中的ForEach(this.tagBeans)内写Text(),背景设置为:.backgroundColor($r(item.is_choose ? “颜色A” : “颜色B”))
在点击事件中使tagBeans[index].is_choose=true,无法实时更新UI状态
但如果使用额外的string对象去记录点击id,判断(this.chooseIds.indexOf(item.id) >= 0),就可以实现实时更新UI。
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS @State修饰的Array<Object>修改对象的属性,单个item的页面数据没刷新。
196浏览 • 1回复 待解决
用@State修饰的Array内部某个item更新了字段,怎么同步通知到ListItem组件里面?
273浏览 • 1回复 待解决
HarmonyOS @State可以修饰对象数组
125浏览 • 1回复 待解决
HarmonyOS " @State可以修饰ArrayList吗"
598浏览 • 1回复 待解决
HarmonyOS @state可以修饰对象数组么
153浏览 • 1回复 待解决
HarmonyOS @State 是不是不能修饰枚举
248浏览 • 1回复 待解决
HarmonyOS 动画必须搭配@State修饰的变量才能生效吗?
148浏览 • 1回复 待解决
HarmonyOS @State修饰的不应该必须初始化
300浏览 • 1回复 待解决
HarmonyOS 组件变量被@Link修饰,如何使用ForEach批量创建组件
512浏览 • 1回复 待解决
@State 修饰的变量值改变,界面不刷新
1852浏览 • 1回复 待解决
HarmonyOS @State修饰的class变量没有嵌套的值无法监听
458浏览 • 1回复 待解决
关于使用Cocos或Unity开发Next应用的咨询
389浏览 • 1回复 待解决
HarmonyOS @State修饰的数组内部的值变化了,怎么刷新UI?
706浏览 • 1回复 待解决
HarmonyOS setInterval回调之后@state修饰的变量对应的UI无法更新
81浏览 • 1回复 待解决
HarmonyOS 嵌套组件能否支持state传递或provider、consumer?
588浏览 • 1回复 待解决
HarmonyOS 在定时器里面改变@state修饰的变量,无法更新UI吗?
398浏览 • 1回复 待解决
HarmonyOS 关于CustomDialog使用@Link监听数据闪退问题
237浏览 • 1回复 待解决
HarmonyOS @state修饰的变量作为判断条件 控制onTouchIntercept事件拦截,不能实时生效
52浏览 • 1回复 待解决
HarmonyOS @State修饰@observed装饰的对象, 对象里的数组改变, 不会触发ui刷新
219浏览 • 1回复 待解决
HarmonyOS @Link装饰器传值只能通过@State定义,这是HarmonyOS语言规定好的么
147浏览 • 1回复 待解决
HarmonyOS @State修饰的ResourceStr内容在变更的时候较大几率不会响应UI的变换
100浏览 • 1回复 待解决
子组件使用@Link修饰成员变量时,如何通过父组件传值
2022浏览 • 1回复 待解决
HarmonyOS 父组件不能用@ObservedV2修饰的类用@state传给子组件
339浏览 • 1回复 待解决
HarmonyOS @state修饰两个变量,出现值不一致
433浏览 • 1回复 待解决
@ObjectLink和@Observed类装饰器用于在涉及嵌套对象或数组的场景中进行双向数据同步:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-observed-and-objectlink-V5
demo参考如下: