HarmonyOS ObjectLink 修改类属性后build未被执行
ObjectLink 修改类的嵌套属性后build未被执行
修改ObjectLink 嵌套类的属性build不执行,想要一个可以定位原因排查问题的技术方案
Column(){
if(this.insuranceModel.hasScrollModule){
List() {
ForEach(this.insuranceModel.insureObjList, (item: InsureObj, index: number) => {
ListItem(){
if(item.scroll) {
this.renderInsureItem(item, index)
}
}
})
}
@Builder renderInsureItem(item: InsureObj, index: number){
Column() {
Image(item.productIcon)
.width(36)
.height(36)
.margin({ top: 6 })
Row(){
Text(item.showTitle)
.fontColor('#333333')
.fontSize(14)
.fontWeight(500)
if(!item.emptyInsCard){
Text(FIconFont.otaInfo)
.fontFamily(FIconFont.iconFontFamily)
.fontColor('#333333')
.fontSize(16)
.margin({left: 2})
}
}
.margin({ top: 2 })
Column(){
this.priceView(item)
}
DashLine({widthValue: 98})
.margin({bottom:6})
Column() {
this.descListView(item)
}
Text(item.isSelected ? FIconFont.checked : FIconFont.unCheck)
.fontColor(item.isSelected ? this.checkedColor : this.unCheckColor)
.fontFamily(FIconFont.iconFontFamily)
.fontSize(20)
.lineHeight(24)
.margin({top: item.emptyInsCard ? 14 : 10})
.onClick(() => {
item.isSelected = !item.isSelected;
})
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS ObjectLink 修饰的元素修改其属性,ui没有生效
269浏览 • 1回复 待解决
修改module名字后,module未被IDE识别
1146浏览 • 1回复 待解决
HarmonyOS在异步线程往主线程抛任务无法被执行
800浏览 • 1回复 待解决
HarmonyOS @Observed修饰的类属性变化没有引起子组件刷新
773浏览 • 1回复 待解决
emmiter事件如果想立即被执行,应如何操作?
874浏览 • 1回复 待解决
HarmonyOS ObjectLink 的属性怎么传递给子组件
465浏览 • 1回复 待解决
HarmonyOS【PixelMap】crop后,显示到Image控件中仍然未被截取
389浏览 • 1回复 待解决
#鸿蒙学习大百科#未被@Trace装饰的属性会怎样?
643浏览 • 0回复 待解决
HarmonyOS new CustomDialogController初始化后,再修改属性应该怎么实现
394浏览 • 1回复 待解决
组件状态修改与build渲染机制
1365浏览 • 1回复 待解决
鸿蒙中JS页面组件属性值修改后,页面没有刷新
4132浏览 • 0回复 待解决
HarmonyOS 关于@Observed @ObjectLink监测嵌套属性不成功的问题
323浏览 • 1回复 待解决
#鸿蒙通关秘籍#不允许将属性分配给“@ObjectLink”修饰的属性
414浏览 • 0回复 待解决
HarmonyOS使用ObjectLink Observed 无法监听到嵌套类的属性更新
706浏览 • 1回复 待解决
HarmonyOS endable对象属性napi无法修改
338浏览 • 1回复 待解决
HarmonyOS 是否支持对象属性进行修改
301浏览 • 1回复 待解决
#鸿蒙学习大百科#在ArkTS中,为类属性添加访问修饰符有什么作用?
523浏览 • 1回复 待解决
HarmonyOS 自定义组件生命周期回调有没有build执行后的回调
564浏览 • 1回复 待解决
HarmonyOS ObjectLink修饰符对象的属性改变不能引起UI刷新
815浏览 • 1回复 待解决
HarmonyOS taskpool执行task后后续代码没有执行
551浏览 • 0回复 待解决
HarmonyOS CustomDialogController动态修改offset属性问题
296浏览 • 1回复 待解决
HarmonyOS 数组子属性修改怎么更新显示
399浏览 • 1回复 待解决
@Watch对应的执行方法,和build的执行顺序是怎样的
2307浏览 • 1回复 待解决
HarmonyOS 升级API12后,使用ObjectLink遇到编译警告
457浏览 • 1回复 待解决
HarmonyOS Grid实现滑动时无法修改 layoutDirection 属性
394浏览 • 1回复 待解决
在自定义构建函数中,不允许改变参数值,同时按照值传递时,状态变量的改变不会引起@builder方法内的UI刷新,文档中有说明:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-builder-V5
基于你需要的场景,调整你的代码如下:
objectLink使用方式及场景文档请参考:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-observed-and-objectlink-V5
1、调试工具:当前IDE是支持相关功能调试的,但是由于当前harmonyOS SDK暂不开源,所以调试时系统部分为黑盒。
2、该UI刷新问题本身:
(1)在自定义构建函数中,不允许改变参数值,同时按照值传递时,状态变量的改变不会引起@builder方法内的UI刷新。
(2)Objectlink修饰的对象赋值会导致双向绑定关系失效,导致UI无法刷新。