HarmonyOS 鸿蒙Next:Navigation和router 不能混合使用么?

发布于 1周前 作者 songsunli 来自 鸿蒙OS

HarmonyOS 鸿蒙Next:Navigation和router 不能混合使用么?

背景是我一个page想使用共享转场,所以就用了router.push来打开新页面A,然后页面A需要通过navigation来打开页面B,结果执行了发现,页面B在页面A前面(即当前的页面显示仍然是A,然后点返回,展示了B,再点返回,回到了首页)

最主要还是因为想使用共享转场,发现文档https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-transition-animation-shared-elements-V5#%E7%A4%BA%E4%BE%8B里共享转场的代码只在router下有用。而一镜到底的示例中,navigation通过custom实现共享元素的示例代码,发现很有局限,,而且那个代码很复杂。

想问问目前有没有啥解决方案

3 回复
更新下,使用全模态也是存在一样的问题,需要先关闭全模态的页面,不然全模态的视图会在使用navigation导航跳转的页面上面

HarmonyOS鸿蒙Next中,Navigation和router在理论上可以混合使用,但需要注意它们各自的管理机制和页面栈处理方式。Navigation作为导航容器组件,提供了页面管理和路由能力,而router则通过全局路由表进行页面跳转。混合使用时,需确保页面栈管理清晰,避免跳转混乱。如果混合使用遇到问题,可能是页面栈处理不当或路由配置错误。如果问题依旧没法解决,请加我微信,我的微信是itying888。

回到顶部