可以通过@Observed装饰器和@ObjectLink装饰器 嵌套类对象属性变化参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-observed-and-objectlink-V5\#%E5%AF%B9%E8%B1%A1%E6%95%B0%E7%BB%84demo:@Observed class InnerMessageVo { id?: number; readState?: boolean; constructor(id: number, readState: boolean) { this.id = id; this.readState = readState; } } @Component struct ViweA { @ObjectLink a: InnerMessageVo; build() { Row() { Text(`${this.a.readState}`) } } } @Entry @Component struct Index { @State arr1: InnerMessageVo[] = [new InnerMessageVo(1, false), new InnerMessageVo(2, false)] build() { Row() { Column() { List() { ForEach(this.arr1, (item: InnerMessageVo, index: number) => { ViweA({ a: this.arr1[index] }) }) ListItem() { Button('change') .onClick(() => { console.log('false'); this.arr1[1].readState = true }) } } } .width('100%') } .height('100%') } }
可以通过@Observed装饰器和@ObjectLink装饰器 嵌套类对象属性变化参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-observed-and-objectlink-V5\#%E5%AF%B9%E8%B1%A1%E6%95%B0%E7%BB%84
demo: