HarmonyOS Navigation和router的使用场景
HarmonyOS Navigation和router的使用场景。
HarmonyOS
赞
收藏 0
回答 2
待解决
相关问题
router和Navigation的技术选择、推荐使用场景和演进策略是什么
2005浏览 • 1回复 待解决
HarmonyOS Navigation和Router这两种跳转方式可以共用吗?使用场景有什么不一样?
67浏览 • 1回复 待解决
HAR和HSP的使用场景区分
285浏览 • 1回复 待解决
关于router和Navigation要选择哪个使用
586浏览 • 2回复 待解决
关于emitter、eventHub的使用场景
2561浏览 • 1回复 待解决
napi 基本使用场景示例
1445浏览 • 1回复 待解决
组件导航相关Navigation和Tabs组件有什么区别?各自适用场景和定位是什么?
2268浏览 • 1回复 待解决
navigation和router的区别是什么?
924浏览 • 1回复 待解决
ArkGraphics 2D都有哪些使用场景?
507浏览 • 1回复 待解决
UIAbility与UIExtensionAbility的使用场景上有什么区别
1578浏览 • 1回复 待解决
请问ArkTS中this使用场景是什么?
1946浏览 • 1回复 待解决
mybatis一级缓存 设计的意义和运用场景
2086浏览 • 1回复 待解决
router、Navigation混合使用存在问题,后续HarmonyOS如何规划的
270浏览 • 1回复 待解决
Oceanbase与DRDS的关系与使用场景的区别?
3814浏览 • 1回复 待解决
共享包HSP内容访问,它的使用场景是什么?
789浏览 • 1回复 待解决
HarmonyOS 页面跳转该使用什么路由方案?(Router还是Navigation)
349浏览 • 1回复 待解决
TiDB的优势?有哪些应用场景?
3670浏览 • 1回复 待解决
基于mysql的悲观锁的运用场景?
2581浏览 • 1回复 待解决
HarmonyOS avplayer的release接口和releasesync接口的应用场景以及他们的具体区别是什么?
174浏览 • 0回复 待解决
#鸿蒙学习大百科#Ability Kit都有哪些使用场景?
253浏览 • 1回复 待解决
应用启动框架AppStartup应用场景分析
459浏览 • 1回复 待解决
鸿蒙系统中的`RemoteView`有哪些应用场景?
115浏览 • 0回复 待解决
HarmonyOS使用navigation路由,如何根据需要来满屏展示?不希望使用router
299浏览 • 1回复 待解决
JSVM-API的应用场景有哪些?
367浏览 • 1回复 待解决
#鸿蒙学习大百科#router和Navigation的区别是什么?
301浏览 • 1回复 待解决
在HarmonyOS的ArkUI中,
Navigation
和 Router
是用于页面导航和路由管理的重要工具。它们在实现应用的多页面结构和页面转换时发挥了关键作用。### Navigation
Navigation
是一种基于声明式UI开发的导航管理方式,通常用于ArkUI中的TSX(TypeScript XML)编写的页面。在这种方式下,你可以通过绑定导航目标来实现页面跳转,并且可以很方便地传递参数、处理返回结果等。#### 使用场景
#### 示例代码 以下示例展示如何使用
Navigation
实现页面跳转与参数传递。### Router
Router
则是一种更底层的导航控制API,提供了更多的灵活性和功能,如返回页面历史堆栈、替换当前页面等。通常用于需要对页面栈进行更细粒度控制的场景。#### 使用场景
#### 示例代码 以下示例展示如何使用
Router
实现页面跳转、返回和替换。### 总结
根据具体需求选择合适的方法,可以更好地实现页面导航和用户体验。
当前HarmonyOS支持两套路由机制(Navigation和Router),Navigation作为后续长期演进及推荐的路由选择方案,其与Router比较的优势如下:
易用性层面:
Navigation天然具备标题、内容、回退按钮的功能联动,开发者可以直接使用此能力。Router若要实现此能力,需要自行定义。
Navigation的页面是由组件构成,易于实现共享元素的转场。
功能层面:
Navigation天然支持一多,Router不支持。
Navigation没有路由数量限制,Router限制32个。
Navigation可以获取到路由栈NavPathStack,并对路由栈进行操作。
Navigation可以嵌套在模态对话框中,也就是说可以模态框中定义路由,Router不支持。
Navigation的组件全量由开发者自行控制,开发者可以自定义复杂的动效和属性的设置(背景、模糊等),Router的page对象不对外暴露,开发者无法对page进行处理。
性能层面:
Navigation传递参数性能更优,Navigation通过引用传递,Router通过深拷贝完成。
Navigation可以配合动态加载,实现组件动态加载,Router页面使用@Entry进行修饰,当前模块加载时会生成全量页面。
应用架构可以参考链接:https://developer.huawei.com/consumer/cn/doc/best-practices-V5/bpta-app-architecture-overview-V5推荐使用Navigation,navigation后续是会兼容router所有的能力而且比router的功能更强大,未来navigation是主流。