HarmonyOS setInterval回调之后@state修饰的变量对应的UI无法更新

setInterval回调之后@state修饰的变量对应的UI无法更新,onPageShow是可以正常更新的,控件中按钮的点击也是可以正常更新的。

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

参考示例如下:

@Entry
@Component
struct TestPage01 {
  @State timeNum: number = 5
  // 声明定时器
  timer: number = -1

  aboutToAppear(): void {
    this.timer = setInterval(() => {
      if (this.timeNum <= 0) {
        clearInterval(this.timer)
        return
      }
      this.timeNum -= 1
    }, 1000)

  }

  aboutToDisappear(): void {
    clearInterval(this.timer)
  }

  build() {
    Column() {
      Text(this.timeNum.toString())
        .fontSize(50)
    }
    .height('100%')
    .width('100%')
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
@State 修饰变量值改变,界面不刷新
1833浏览 • 1回复 待解决
HarmonyOS @State无法更新组件文本
129浏览 • 1回复 待解决
HarmonyOS 组件渲染完成之后
145浏览 • 1回复 待解决