首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >HarmonyOS NEXT 实战系列09-生命周期

HarmonyOS NEXT 实战系列09-生命周期

原创
作者头像
用户8181473
发布2025-03-17 22:43:06
发布2025-03-17 22:43:06
1700
举报

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

onPageShow:页面每次显示时触发一次,包括路由过程、应用进入前台等场景。

onPageHide:页面每次隐藏时触发一次,包括路由过程、应用进入后台等场景。

onBackPress:当用户点击返回按钮时触发。

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

aboutToDisappear:aboutToDisappear函数在自定义组件析构销毁之前执行。

代码语言:txt
复制
@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函数在自定义组件析构销毁之前执行。

代码语言:txt
复制
@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()
      }
 
    }
  }
}

————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/zsgzsgzsgzsgzsg/article/details/146199254

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档