鸿蒙Next现在用什么替换router

鸿蒙Next不再支持原来的router模块,请问现在官方推荐用什么方案来实现页面路由功能?有没有具体的API文档或迁移指南可以参考?

2 回复

鸿蒙Next里,router被“导航器”取代了!就像把导航从纸质地图升级到高德——更丝滑、更智能。开发时记得用Navigation和NavDestination,别再用router找不着北啦!🚗💨

更多关于鸿蒙Next现在用什么替换router的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next(HarmonyOS NEXT)中,路由功能由 Router 模块替代了之前的 router 相关 API。它提供了页面导航的统一接口,支持页面跳转、参数传递和返回操作。

主要方法:

  1. Router.pushUrl():跳转到指定页面。
  2. Router.replaceUrl():替换当前页面。
  3. Router.back():返回上一页面或指定页面。

示例代码(ArkTS):

import { Router } from '@kit.ArkUI';

// 1. 跳转到目标页面(可传递参数)
Router.pushUrl({
  url: 'pages/DetailPage', // 目标页路径
  params: { id: 123 }      // 传递参数
});

// 2. 替换当前页面(无返回栈)
Router.replaceUrl({
  url: 'pages/NewPage'
});

// 3. 返回上一页面
Router.back();

注意事项:

  • 页面路径需在 module.json5 中配置。
  • 参数通过 params 传递,目标页面通过 router.getParams() 获取。

如需更复杂路由(如动态路由),需结合页面生命周期和状态管理实现。

回到顶部