HarmonyOS鸿蒙Next中OpenHarmony @Builder BUG
HarmonyOS鸿蒙Next中OpenHarmony @Builder BUG
加断点调试发现:
BUG: 用@Builder,只要TabBarContent的状态有变化,Setting就会重新创建(我不想重建组件),
但是直接用Setting就不会重新创建
更多关于HarmonyOS鸿蒙Next中OpenHarmony @Builder BUG的实战教程也可以访问 https://www.itying.com/category-93-b0.html
楼主您好,经技术人员反馈,此问题是旧BUG,新框架已修复
楼主您好,请提供一下SDK版本号
# OpenHarmony API9 3.2.10.6 Beta5
- **版本**:
- **描述**:
- **更新时间**:
DEMO:
用this.build_InstallDemo()
,点击红色区域,时间已经改变,组件被重建,这是错误的。
把this.build_InstallDemo()
换成InstallDemo()
,点击红色区域,时间没有改变,组件没有重建,这是正确的。
看图:
代码:
@Entry @Component struct IndexPage { build() { Stack() { Demo(){ this.build_InstallDemo()// InstallDemo() } } } @Builder build_InstallDemo(){ InstallDemo(); } } @Component struct InstallDemo { build() { Text(this.getTime()); } getTime():string { return “我应该是不变的:”+new Date().getTime(); } aboutToAppear() { console.log(“我被重建了”) } } @Component struct Demo { @State count:number = 1; @BuilderParam content:() => void; build() { Column() { this.content() Text(“点击我,Count is:”+this.count) .width(100) .width(100) .backgroundColor(’#f00’) .onClick(()=>{ this.count++; }) } } }
可想而知,@Builder是严重影响性能的,而且有BUG