在HarmonyOS NEXT开发中Navigation的navDestination无法使用命名路由直接展示页面 ?

在HarmonyOS NEXT开发中Navigation的navDestination无法使用命名路由直接展示页面 ?希望能在Navigation的navDestination中通过组件直接展示命名路由的组件,而不需要再去定义
navDestination中定义的是

@Builder 
function PageMap(name: string, param: object) { 
  if (name === WebViewPagesRouter.COMPONENT_WEBVIEW_PAGE) { 
    WebViewPage2({ param: param }) 
  } 
} 

希望navDestination自动寻址到WebViewPage2而不需要手动写上面的if,通过能够满足WebViewPage2的生页面声明周期,现在使用Navigation,navDestination中定义的组件无法使用生命周期方法onPageShow等

之前通过router定义的页面

@Entry({ routeName: WebViewPagesRouter.COMPONENT_WEBVIEW_PAGE }) 
@Component 
export struct WebViewPage2 { 
}
阅读 844
1 个回答

从API version 12开始,Navigation支持使用系统路由表的方式进行动态路由。各业务模块(HSP/HAR)中需要独立配置router_map.json文件,在触发路由跳转时,应用只需要通过NavPactStack提供的路由方法,传入需要路由的页面配置名称,此时系统会自动完成路由模块的动态加载、页面组件构建,并完成路由跳转,从而实现了开发层面的模块解耦。参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides...系统路由表

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进