HarmonyOS UI不刷新
@Observed
export class FaultReportSortItemBean {
@Track dValue?:string
@Track dKey?:string
@Track id?:string
@Track ifSelected?:boolean = false
}
父组件里:
@State sortItemArr: Array<FaultReportSortItemBean> = []
FaultReportViewModel.getCouponList(map, true, true, true).then(res => {
let array = res.data as Array<FaultReportSortItemBean>
for (let index = 0; index < array.length; index++) {
const element = array[index];
this.sortItemArr.push(element!)//获取到数据push进去
}
})
Grid() {
ForEach(this.sortItemArr, (itemModel: FaultReportSortItemBean, index: number) => {
GridItem() {
sortItemView({ itemModel: itemModel })
}
.width('calc(50% - 5vp)')
.height(36)
.onClick(() => {
itemModel.ifSelected = !itemModel.ifSelected//不会刷新子组件里的ui
})
})
}
子组件:
@Component
export struct sortItemView {
@ObjectLink itemModel: FaultReportSortItemBean
build() {
Column() {
Button(this.itemModel.dKey, { type: ButtonType.Normal, stateEffect: false })
.height('100%')
.width('100%')
.fontColor(this.itemModel.ifSelected == true ? Color.White : '#999999')
.fontSize(14)
.backgroundColor(Color.Transparent)
.borderWidth(this.itemModel.ifSelected == true ? 0 : 1)
.borderColor(this.itemModel.ifSelected == true ? Color.Transparent : '#999999')
.borderRadius(10)
Image(this.itemModel.ifSelected == true ? $r('app.media.btnCommon') : '')
}
.width('100%')
.height('100%')
}
}
为什么点击事件不刷新ui
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS LIst组件UI不刷新
71浏览 • 1回复 待解决
HarmonyOS UI不刷新问题
243浏览 • 1回复 待解决
IF条件变化后UI不刷新
977浏览 • 1回复 待解决
HarmonyOS 更新数据后UI不刷新
114浏览 • 1回复 待解决
HarmonyOS @builder方法的ui不刷新
355浏览 • 1回复 待解决
状态装饰器 ui不刷新的问题
2622浏览 • 1回复 待解决
使用LazyForEach渲染语法渲染组件,UI不刷新。
1356浏览 • 1回复 待解决
HarmonyOS 懒加载列表更改属性UI不刷新
210浏览 • 1回复 待解决
修改ForEach使用的数据对象,UI不刷新
2135浏览 • 1回复 待解决
HarmonyOS能否实现服务卡片刷新卡片UI不拉起应用
754浏览 • 1回复 待解决
HarmonyOS 解析Json数据添加到数据源不刷新UI
766浏览 • 2回复 待解决
HarmonyOS 复杂数据类型变更,UI不刷新,该如何解决?
90浏览 • 1回复 待解决
列表里LazyForEach中多层模型嵌套,更改数据UI不刷新
292浏览 • 0回复 待解决
HarmonyOS 主线程刷新UI
532浏览 • 1回复 待解决
UI预览不会自动刷新, 且刷新较慢
1033浏览 • 1回复 待解决
HarmonyOS LazyForEach问题刷新UI问题
244浏览 • 1回复 待解决
HarmonyOS使用@ObjectLink 数据不刷新
990浏览 • 2回复 待解决
HarmonyOS @Builder UI刷新问题
189浏览 • 1回复 待解决
HarmonyOS UI 未刷新问题
744浏览 • 0回复 待解决
HarmonyOS 卡片更新图片不刷新
227浏览 • 1回复 待解决
HarmonyOS 如何在页面刷新时保持某组件不刷新
59浏览 • 1回复 待解决
HarmonyOS IDataSource数据源刷新后,列表为不刷新
608浏览 • 1回复 待解决
HarmonyOS UI和ViewModel如何刷新数据
103浏览 • 1回复 待解决
求告知如何强制刷新UI?
583浏览 • 1回复 待解决
HarmonyOS 装饰器不刷新问题
380浏览 • 1回复 待解决
可以用Repeat来代替foreach,下面是实现的demo:
参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-rendering-control-repeat-V5