HarmonyOS Array 成员变量属性更改,状态不同步、未能刷新UI
试了各种定义,用链表下标访问时, 组件内的 text 的 title都刷新不了、更不用谈ListItem(里边用的@ObjectLink);
// 换成单个对象捆绑、才会响应, 但是场景是需要用链表。
@Observed
export class ConversationBean {
string title;
}
@Observed
class ConversationArray extends Array<ConversationBean> {}
@Observed
export class ObservedArray<T> extends Array<T> {
constructor(args?: T[]) {
if (args instanceof Array) {
super(...args);
} else {
super();
}
}
}
@Component
struct ConversationList {
@State conversationList: ObservedArray<ConversationBean> = []//ConversationBean[] = [];//Array<ConversationBean> = []
@State conversationBean: ConversationBean = new ConversationBean();
build() {
Column() {
List() {
ForEach(this.conversationList, (item: ConversationBean) => {
ListItem() {
ConversationListItem({ conversation: item})//this.conversationBean
}.width('100%')
})
}.divider({ strokeWidth: 1, startMargin: 15, color: Color.Gray }).backgroundColor(Color.Blue)
.onClick(() => {this.test()})
Text(this.conversationList[0].title)//this.conversationBean.title
}
}
aboutToAppear(): void {
this.conversationList = ConversationViewModel.getConversationList();
this.conversationBean = this.conversationList[0];
}
test() { // this.conversationList = ConversationViewModel.getConversationList();
if (this.conversationList.length > 0) {
this.conversationList[0].title += '00';
}
this.conversationBean.title += 'bean++'
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
解决页面间数据不同步问题
851浏览 • 1回复 待解决
HarmonyOS 变量状态同步问题
195浏览 • 1回复 待解决
backgroud()方法使用@State修饰的状态变量值更新后未能触发不同的@builder方法刷新
2161浏览 • 1回复 待解决
刷新显示状态,希望自定义一个刷新组件,通过刷新状态的不同显示不同字段包括下拉刷新,释放刷新
769浏览 • 1回复 待解决
HarmonyOS 状态变量不刷新问题
331浏览 • 1回复 待解决
状态装饰器 ui不刷新的问题
2357浏览 • 1回复 待解决
HarmonyOS 嵌套层级较多,导致状态管理不能刷新UI
351浏览 • 1回复 待解决
如何将界面上的状态变量传给服务层,在服务层修改状态变量对象的属性刷新页面
574浏览 • 1回复 待解决
#鸿蒙学习大百科#状态变量的变化何时会触发UI刷新?
186浏览 • 1回复 待解决
HarmonyOS 为什么@Link的属性变更不会触发UI刷新?
214浏览 • 1回复 待解决
自定义组件中,批量更新多个状态变量 vs 批量更新多个非状态变量后更新一个UI无关状态变量强制更新UI
1654浏览 • 1回复 待解决
HarmonyOS Navigtion组件,两个NavDestination之间如何同步状态变量
298浏览 • 1回复 待解决
HarmonyOS ObjectLink修饰符对象的属性改变不能引起UI刷新
367浏览 • 1回复 待解决
HarmonyOS 主线程刷新UI
136浏览 • 1回复 待解决
HarmonyOS 如何让自定义类中的属性变化引起UI刷新?
296浏览 • 1回复 待解决
HarmonyOS viewmodel如何与ui同步
364浏览 • 1回复 待解决
mysql 不同库数据同步
2448浏览 • 1回复 待解决
@Provide的状态变量,是否可以观察多层嵌套的属性?
782浏览 • 1回复 待解决
HarmonyOS UI 未刷新问题
369浏览 • 0回复 待解决
UI预览不会自动刷新, 且刷新较慢
453浏览 • 1回复 待解决
CustomDialogController仅在作为@CustomDialog和@Component struct的成员变量问题
242浏览 • 1回复 待解决
Native侧如何获取ArkTS侧Object对象及其成员变量
2507浏览 • 1回复 待解决
HarmonyOS 状态管理-父子组件同步的问题
390浏览 • 1回复 待解决
js-ui开发中dom的属性需要写入变量,请问语法是什么?
9056浏览 • 3回复 待解决
关于不同屏幕UI适配方案
264浏览 • 1回复 待解决
可以参考简单demo去实现
参考文档
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-observed-and-objectlink-V5#概述