首页
学习
活动
专区
圈层
工具
发布

鸿蒙仓颉语言开发教程:页面和组件的生命周期

大家早上好,今天要分享的内容是仓颉开发语言中的生命周期。

其实幽蓝君比较喜欢分享实战写代码,不太喜欢讲太理论的东西,今天之所以单独写一篇文章分享生命周期的内容,因为这部分内容如果不讲一下还真是容易踩坑。

生命周期指的是页面或者组件从加载、显示到消失的过程,在这个过程中会有一些系统事件,我们可以在其中进行一些操作。比如ArkTs中有aboutToAppear()、onPageShow()等方法。那么仓颉中的生命周期是什么样的呢?

如果你对仓颉毫不了解,只能顺着ArkTs的方式试着去写,你会发现仓颉中没有任何关于这部分的代码提示,然后你硬着头皮完全手写下aboutToAppear、onPageShow等方法,像这样:

func aboutToAppear(){

AppLog.info("tabbar-aboutToAppear")

}

func onPageShow(){

AppLog.info("tabbar-aboutToAppear")

}

运行一下你会发现它不但无效,还会报错,是不是很崩溃。

仓颉的生命周期确确实实是这几个,但是你绝对想不到它的写法。就是在上面的方法中加上protected和open这两个前缀修饰符:

protected open func aboutToAppear(){

AppLog.info("tabbar-aboutToAppear")

}

protected open func aboutToDisappear(){

AppLog.info("tabbar-aboutToDisappear")

}

protected open func onPageShow(){

AppLog.info("tabbar-onPageShow")

}

protected open func onPageHide(){

AppLog.info("tabbar-onPageHide")

}

protected open func onBackPress(){

AppLog.info("tabbar-onBackPress")

return true

}

在@Entry装饰的组件或页面中,存在aboutToAppear、aboutToDisappear、onPageShow、onPageHide、onBackPress这几个生命周期函数,执行的时机大家看名字就可以猜到。其中onBackPress是有bool类型的返回值的,当返回true说明不使用系统的返回方法,自己处理返回逻辑,反之返回false。

在只有@Component修饰的组件中,只有aboutToAppear、aboutToDisappear两个生命周期函数,这一点和Arkts保持一致。

以上就是仓颉语言生命周期的相关内容。#HarmonyOS语言##仓颉##购物#

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OyBdM8cbdy4pOCRBgOzKh3Cg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。
领券