鸿蒙开发 - 生命周期

鸿蒙的生命周期主要包括应用生命周期页面生命周期组件生命周期。下面是详细介绍:

应用生命周期

  1. onCreate:当应用启动时首先触发。在这个阶段,开发者可以初始化应用所需的数据和资源。
  2. onWindowStageCreate:当应用窗口创建时触发。可以通过 windowStage.loadContent('pages/Index') 方法设置应用要加载的主界面
  3. obBackground:当应用从前台切换到后台时触发。在这个阶段可以释放一些资源或暂停任务。
  4. onForeground:当应用从后台切换到前台时触发。在这个阶段可以重启一些释放的资源。
  5. onWindowStageDestroyonDeStroy:这两个方法分别是在应用窗口销毁和应用销毁时调用。在这个阶段可以释放所有占用的系统资源。

页面生命周期

  1. onPageShow 当页面显示完成时触发(包括路由过程、应用进入前台等场景)
  2. onPageHide 当页面隐藏时触发(包括路由过程、应用进入后台等场景)
  3. onBackPress 当用户点击返回键或离开页面时触发

组件生命周期

  1. aboutToAppear 组件即将出现,在执行build函数之前执行。(可以进行数据初始化、资源加载等)
  2. aboutToDisappear 组件即将被销毁时调用(释放所有不再需要的资源,避免内存泄露和性能问题)

其他介绍

  • onBackPress()

onBackPress 函数可以监听用户返回上一个页面,然后可以做拦截处理,比如支付场景:用户到了支付界面,未支付返回上一页面

extendtypescript 复制代码
onBackPress(){
  try {
    router.showAlertBeforeBackPage({
      message: '您还没有完成支付,确定要返回吗?'
    })
  } catch(err){
    console.error(`Invoke showAlertBeforeBackPage failed, code is ${err.code}, message is ${err.message}`)
  }
}