HarmonyOS 装饰器不刷新问题

开发自定义组件,其中某个字段使用V1装饰器的@State装饰,字符串内容不变的情况下,也会触发UI刷新,而更换使用V2装饰器中@Local装饰,字符串内容不变的情况下,不会刷新UI,即便先把字段赋值成其他值,再赋值回来之前的字符也不行。

HarmonyOS
2024-11-27 09:35:59
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

参考demo,使用@Local装饰,点击图片切换图片。

@Entry 
@ComponentV2 
struct Index { 
  @Local imgCodeUrl: ResourceStr = "" 
  aboutToAppear(): void { 
    this.refreshImgCode() 
  } 
 
  async refreshImgCode() { 
    if (this.imgCodeUrl==='https://developer.huawei.com/allianceCmsResource/resource/HUAWEI_Developer_VUE/images/homeNew/51440.png') { 
      this.imgCodeUrl='https://developer.huawei.com/allianceCmsResource/resource/HUAWEI_Developer_VUE/images/AppGalleryConnect.svg' 
    } else { 
      this.imgCodeUrl='https://developer.huawei.com/allianceCmsResource/resource/HUAWEI_Developer_VUE/images/homeNew/51440.png' 
    } 
  } 
 
  build() { 
    Column(){ 
      Image(this.imgCodeUrl) 
        .alt($r('app.media.startIcon')) 
        .height(36) 
        .margin({ left: 10 }) 
        .onClick(() => { 
          this.refreshImgCode() 
        }) 
    } 
  } 
}
分享
微博
QQ
微信
回复
2024-11-27 14:40:30
相关问题
状态装饰 ui刷新问题
2608浏览 • 1回复 待解决
HarmonyOS UI刷新问题
199浏览 • 1回复 待解决
HarmonyOS 状态变量刷新问题
714浏览 • 1回复 待解决
HarmonyOS 列表刷新问题
826浏览 • 1回复 待解决
HarmonyOS webview刷新问题
179浏览 • 2回复 待解决
HarmonyOS 页面刷新问题
538浏览 • 1回复 待解决
HarmonyOS 组件刷新问题
229浏览 • 1回复 待解决
HarmonyOS 数据刷新问题
199浏览 • 1回复 待解决
HarmonyOS List item 刷新问题
1018浏览 • 1回复 待解决
HarmonyOS LazyForEach数据刷新问题
127浏览 • 1回复 待解决
HarmonyOS ForEach列表刷新问题
289浏览 • 1回复 待解决
HarmonyOS 页面数据刷新问题
156浏览 • 1回复 待解决
NativeWindowFlushBuffer接口刷新问题
2095浏览 • 1回复 待解决
HarmonyOS UI 未刷新问题
700浏览 • 0回复 待解决
HarmonyOS swiper数据刷新问题
163浏览 • 1回复 待解决
HarmonyOS 页面跳转刷新问题
1206浏览 • 1回复 待解决
HarmonyOS @Builder UI刷新问题
145浏览 • 1回复 待解决
HarmonyOS使用Refresh下拉刷新问题
1095浏览 • 1回复 待解决
HarmonyOS 组件的下拉刷新问题
692浏览 • 1回复 待解决
HarmonyOS 自定义弹窗刷新问题
213浏览 • 1回复 待解决
HarmonyOS ForEach创建的视图刷新问题
229浏览 • 1回复 待解决