HarmonyOS tab页面如果想让页面每次展示的时候都调用一遍,该如何实现,onPageShow方法不走

tab页面如果想让页面每次展示的时候都调用一遍,该如何实现,onPageShow方法不走

HarmonyOS
2024-12-20 16:20:14
397浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
fox280

Tabs组件切换不执行onPageShow生命周期,因为onPageShow是页面级的生命周期,tabs切换触发的应该是子组件组件级的生命周期aboutToAppear(), 可以将showPage()放在该生命周期内调用。推荐 使用onTabBarClick(event: (index: number) => void)获取父组件当前点击的tabIndex,在父组件中通过@State定义一个currentTabIndex变量,在onTabBarClick回调中将index赋值给currentTabIndex,并将这个值传递给TabContent包裹的子组件。在子组件中通过@Props和@Watch来监听父组件传递值的不同,执行各个tabContent中的showPage方法。

分享
微博
QQ
微信
回复
2024-12-20 19:00:39
相关问题