HarmonyOS 鸿蒙Next @Entry @Component struct MainPage 被@Entry修饰的生命周期问题
HarmonyOS 鸿蒙Next @Entry @Component struct MainPage 被@Entry修饰的生命周期问题 创建项目的时候有一个启动页面显示广告的案列代码,
SplashScreenPage这个页面有个计时器,有时候pageHide的生命周期没有回调,该代码
clearInterval()在pageHide()在生命周期内执行
导致计时器没有结束,
计时器内满足条件跳转第二页面:router.replaceUrl({
url: CommonConstants.MAIN_PAGE_URL
})这个方法回一直调用,导致
MainPage一直刷新
更多关于HarmonyOS 鸿蒙Next @Entry @Component struct MainPage 被@Entry修饰的生命周期问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
楼主您好,关于页面和自定义组件生命周期的问题可以参考以下文档:
更多关于HarmonyOS 鸿蒙Next @Entry @Component struct MainPage 被@Entry修饰的生命周期问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS(鸿蒙)中,@Entry
修饰的@Component struct
表示这是一个页面的入口组件。@Entry
用于标识该组件是应用的入口页面,系统会自动处理其生命周期。
@Entry
修饰的组件生命周期主要包括以下几个阶段:
- onPageShow: 当页面显示时触发。此时页面已经准备好,可以进行数据初始化或UI更新。
- onPageHide: 当页面隐藏时触发。页面不再可见时调用,可以在此释放资源或停止动画等。
- onBackPress: 当用户按下返回键时触发。可以在此处理返回逻辑,返回
true
表示已处理,返回false
则继续默认行为。 - onPageActive: 当页面从后台返回到前台时触发。页面重新可见时调用。
- onPageInactive: 当页面从前台切换到后台时触发。页面不再活跃时调用。
这些生命周期方法会在组件的不同状态下自动调用,开发者可以根据需要在相应的方法中实现业务逻辑。
@Entry
修饰的组件生命周期与普通的@Component
有所不同,@Entry
专门用于管理页面的入口及其生命周期。