HarmonyOS 按照官方提供的Navigation应用导航设计,如何解决页面组件无法使用生命周期的问题?

有两个HAR的module分别是A和B,实现模块之间不互相依赖可以跳转到其它模块界面,按文档如果使用RouterModule的Navigation方式,页面需要使用@Builder装饰器构建函数来实现界面,那就无法使用自定义组件的生命周期,比如aboutToAppear,这个问题怎么解决,有时候需要在生命周期中处理业务逻辑?

HarmonyOS
2024-10-12 09:53:24
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

NavDestination有:

.onAppear(() => { })       
.onDisAppear(() => {})       
.onShown(() => {})       
.onHidden(() => { })

四个回调可以使用,可参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-navigation-V5#示例

而自定义构建函数(@Builder)默认的按值参数传递方式不支持动态改变组件,当传递的参数为状态变量时,状态变量的改变不会引起@Builder方法内的UI刷新,要实现UI动态刷新需要按引用传递参数。

可以点击蓝色的:按引用传递参数进行查看。对应链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-builder-V5#%E6%8C%89%E5%BC%95%E7%94%A8%E4%BC%A0%E9%80%92%E5%8F%82%E6%95%B0

按引用传递参数时,如果在@Builder方法内调用自定义组件,ArkUI提供$$作为按引用传递参数的范式。

分享
微博
QQ
微信
回复
2024-10-12 16:41:38
相关问题
HarmonyOS Navigation跳转组件生命周期
423浏览 • 2回复 待解决
如何知晓navigation组件生命周期
171浏览 • 1回复 待解决
HarmonyOS navigation页面生命周期
281浏览 • 1回复 待解决
Dialog组件生命周期问题
232浏览 • 1回复 待解决
HarmonyOS Navigation跳转生命周期咨询
477浏览 • 1回复 待解决
应用生命周期流转
490浏览 • 1回复 待解决
弹窗组件无法调用生命周期接口
2104浏览 • 1回复 待解决
Window窗口生命周期问题
238浏览 • 1回复 待解决
如何使用AbilityStage生命周期函数
2364浏览 • 1回复 待解决
HarmonyOS 弹框Dialog生命周期问题
434浏览 • 1回复 待解决
如何监听AbilitySlice生命周期
5040浏览 • 1回复 待解决
HarmonyOS页面onPageShow生命周期不回调
784浏览 • 1回复 待解决
HarmonyOS能否全局监听页面生命周期
445浏览 • 1回复 待解决
HarmonyOS TabContent页面生命周期不触发
268浏览 • 1回复 待解决
HarmonyOS App生命周期是什么?
282浏览 • 2回复 待解决
TabContent 内容生命周期
254浏览 • 1回复 待解决
应用导航设计遇到问题
214浏览 • 1回复 待解决
HarmonyOS 模块生命周期管理
132浏览 • 1回复 待解决
HarmonyOS 监听所有page生命周期
267浏览 • 1回复 待解决