阅读:505回复:0
HarmonyOS NEXT 数组中的对象数据变化,UI不刷新问题
问题:
修改数组中的对象,页面不重新渲染 原因: @State只是监听数组的地址值,所以只有地址值改变时才会重新渲染页面 解决方案: 方法1: //先复制一个临时的列表 let tempList: Array<A> = [...this.dataList] // 修改tempList数组中的值 tempList[index].key = value; //将tempList赋值给数组, 页面即可重新渲染 this.List = [...tempList] 方法2: this.List[index].key = value; //修改数据 this.List = this.List.map(item=>item); //map方法会返回一个新数组,故页面也会重新渲染 |
|
|