​ 生命周期

图片

图片
编辑

页面生命周期,即被@Entry装饰的组件生命周期,提供以下生命周期接口:

onPageShow:页面每次显示时触发一次,包括路由过程、应用进入前台等场景。
onPageHide:页面每次隐藏时触发一次,包括路由过程、应用进入后台等场景。
onBackPress:当用户点击返回按钮时触发。
aboutToAppear:组件即将出现时回调该接口,具体时机为在创建自定义组件的新实例后,在执行其build()函数之前执行
aboutToDisappear:aboutToDisappear函数在自定义组件析构销毁之前执行。


@Entry
@Component
struct Index {
aboutToAppear(): void {

console.log('组件创建')

}

aboutToDisappear(): void {

console.log('组件销毁')

}

onPageShow(): void {

console.log('组件显示')

}

onPageHide(): void {

console.log('组件隐藏')

}

build() {

Column() {

}

}
}

图片

组件生命周期,即一般用@Component装饰的自定义组件的生命周期,提供以下生命周期接口:

aboutToAppear:组件即将出现时回调该接口,具体时机为在创建自定义组件的新实例后,在执行其build()函数之前执行
aboutToDisappear:aboutToDisappear函数在自定义组件析构销毁之前执行。




@Component
struct SonCom {
aboutToAppear(): void {

console.log('组件创建')

}

aboutToDisappear(): void {

console.log('组件销毁')

}

build() {

Column() {
  Text('我是子组件')
}
.width(200)
.height(200)
.border({ width: .5 })

}
}

@Entry
@Component
struct Index {
@State show: boolean = false

build() {

Column() {
  Text('组件的生命周期')
  Button('切换子组件显示')
    .onClick(() => {
      this.show = !this.show
    })
  if (this.show) {
    SonCom()
  }

}

}
}

图片


咆哮的萝卜_cYtbpB
1 声望0 粉丝