【HarmonyOS 5】鸿蒙页面和组件生命周期函数

【HarmonyOS 5】鸿蒙页面和组件生命周期函数

一、生命周期阶段:

创建阶段
build:

构建组件的 UI 结构和样式。

onDidBuild:

build 方法执行完毕后调用,可用于数据初始化或额外的 UI 调整。

挂载阶段
onPageShow:

页面显示时调用。
onReady:

组件挂载到页面后调用。
onWindowStageShow:

窗口显示时调用。

交互阶段
onBackPress:

用户点击返回按钮时调用。

销毁阶段
onPageHide:

页面隐藏时调用。

onDestroy:

组件销毁时调用。

二、页面和组件的生命周期函数如何区分?

首先我们需要理解页面和自定义组件的概念。

在 ArkUI 中,页面组件指的是被@Entry装饰的组件,其拥有独特的生命周期接口,这些接口对页面在不同状态下的行为控制起着关键作用。

自定义组件则由@Component装饰。

如何分清楚哪些是页面独有的生命周期函数呢?关键点在于函数名字中的page,例如onPageShow,onPageHide这两个就是页面独有。并且还有个特殊的函数,即:返回按钮触发函数,onBackPress。只需要记住,只有页面才能响应返回按钮即可。

三、DEMO示例

dart 复制代码
@Entry
@Component
struct LifeCycleExample {
  build() {
    Column({ space: 50 }) {
      Text('生命周期示例')
        .fontSize(50)
        .fontWeight(FontWeight.Bold)
    }
    .width('100%')
  }

  onDidBuild() {
    console.log('build方法执行完毕');
  }

  onPageShow() {
    console.log('页面显示');
  }

  onReady() {
    console.log('组件挂载完成');
  }

  onWindowStageShow() {
    console.log('窗口显示');
  }

  onBackPress(): boolean {
    console.log('点击返回按钮');
    return false;
  }

  onPageHide() {
    console.log('页面隐藏');
  }

  onDestroy() {
    console.log('组件销毁');
  }
}
相关推荐
huainingning10 分钟前
华为E1专线使用与配置案例
华为
aixingkong92141 分钟前
华为灵衢超节点参考架构白皮书深度解读
大数据·人工智能·华为
独隅1 小时前
HarmonyOS 系统能力与体验深度评测 - 超详细版
华为·harmonyos
懿路向前2 小时前
唤醒工作台全实录(六):数据层——5ms 竞态窗口与“查询即引用“
华为·架构·harmonyos
KevinChaos2 小时前
灶台菜谱设计手记 04|HarmonyOS 7.0 空间化:信息折叠展开
harmonyos
无限码力3 小时前
华为校招笔试真题 10.28 - 稀疏整数求和(C++/Py/Java /Js/Go)
华为·华为笔试真题·华为校招笔试真题·华为校招笔试·华为非ai岗笔试真题
贾伟康4 小时前
【共创稿事节】HarmonyOS 7.0 HiTraceChain分布式调用链:从接入到生产验证
分布式·harmonyos·可观测性·调用链·hitracechain
无限码力5 小时前
华为校招笔试真题 10.28 - 运输中转站计数(C++/Py/Java /Js/Go)
华为·华为笔试真题·华为校招笔试真题·华为秋招笔试真题·华为校招算法笔试题
熊猫钓鱼>_>15 小时前
碰一碰无网近场文件快传与断点续传【鸿蒙心迹】
华为·交互·harmonyos·arkts·鸿蒙·openharmony·鸿蒙心迹
每天进步一点点km18 小时前
自用-牛客网-华为机试编程模拟题1-python
华为od·华为·面试