列表局部刷新,有人知道怎么处理吗?

列表局部刷新

HarmonyOS
2024-06-04 23:23:42
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
guo_jerry

示例代码

@Entry 
@Component 
struct Index { 
  @State dataList: dataListItem[] = []; 
 
  aboutToAppear() { 
    for (let i = 0; i < 5; i++) {       let dataItem = new dataListItem(`${i * 10}`, "张三" + i)       this.dataList.push(dataItem)     } 
  } 
 
  build() { 
    Row() { 
      Column() { 
        List({ space: 8 }) { 
          ForEach(this.dataList, (item: dataListItem) => { 
            ListItem() { 
              ViewA({ dataItem: item }) 
            } 
          }, (item: dataListItem) => item.name) 
        } 
      }.width('100%') 
    }.height('100%') 
  } 
} 
 
@Component 
struct ViewA { 
  // 子组件ViewA的@ObjectLink的类型是ClassA 
  @ObjectLink dataItem: dataListItem; 
 
  build() { 
    Row() {       Text(this.dataItem.name).layoutWeight(1)       Text(this.dataItem.score).layoutWeight(1)     } 
    .onClick(() => { 
      this.dataItem.score = "100" 
    }) 
    .borderRadius(8) 
    .height(60) 
    .width("100%") 
    .backgroundColor(Color.Pink) 
  } 
} 
 
@Observed 
class dataListItem { 
  score: string 
  name: string 
 
  constructor(score: string, name: string) { 
    this.score = score 
    this.name = name 
  } 
}

参考链接

ForEach:循环渲染

@Observed和@ObjectLink修饰器

分享
微博
QQ
微信
回复
2024-06-05 19:56:29
相关问题
SnapShot定位,有人知道怎么处理
434浏览 • 1回复 待解决
有人知道社区怎么预约直播
1463浏览 • 1回复 已解决
怎么主动关闭键盘,有人知道
36浏览 • 1回复 待解决
有人知道怎么在markdown里面写目录
1355浏览 • 1回复 已解决
怎么压缩一个目录?有人知道
372浏览 • 1回复 待解决
有人知道轻量系统上怎么使用MQTT
1425浏览 • 2回复 已解决
有人知道关于页demo
440浏览 • 1回复 待解决
如何保存faultLogger ,有人知道
192浏览 • 1回复 待解决
有人知道JS menu如何隐藏
3313浏览 • 1回复 待解决
有人知道
93浏览 • 1回复 待解决
如何跳出ForEach,有人知道
804浏览 • 1回复 待解决
如何发送短信,有人知道?
768浏览 • 1回复 待解决
taskpool 使用问题,有人知道
456浏览 • 1回复 待解决
webview组件demo ,有人知道
461浏览 • 1回复 待解决
如何实现振动,有人知道
758浏览 • 2回复 待解决
有人知道发布页demo
475浏览 • 1回复 待解决
导包报错,有人知道原因
618浏览 • 1回复 待解决
clientid相关问题,有人知道
684浏览 • 1回复 待解决