HarmonyOS 页面路由:Router API
适用版本HarmonyOS 6.1API 12及以上验证环境Pura 90 Pro 模拟器HarmonyOS 6.1.1API 24关键概念router.pushUrl、router.replaceUrl、router.back、路由栈、参数传递前言HarmonyOS 的页面路由基于栈模型pushUrl入栈保留历史replaceUrl替换栈顶back出栈返回。本文覆盖路由注册、跳转、参数传递和返回值共享的完整用法。一、注册页面在entry/src/main/resources/base/profile/main_pages.json中声明所有页面{ src: [ pages/Index, pages/DetailPage, pages/ProfilePage ] }二、基本跳转import router from ohos.router // pushUrl入栈保留当前页可以 back 回来 router.pushUrl({ url: pages/DetailPage }) // replaceUrl替换栈顶当前页不保留无法 back 回来 router.replaceUrl({ url: pages/DetailPage }) // back返回上一页 router.back() // back 到指定页面url 为目标页路径 router.back({ url: pages/Index })三、带参数跳转// 发送参数源页面 router.pushUrl({ url: pages/DetailPage, params: { userId: 42, title: 商品详情, tags: [热门, 推荐] } })// 接收参数目标页面的 aboutToAppear 生命周期 aboutToAppear(): void { const p router.getParams() if (p ! null p ! undefined) { const params p as Recordstring, string this.userId parseInt(params[userId] || 0) this.title params[title] || } }四、路由栈管理// 获取当前路由栈深度 const depth router.getLength() // number // 获取当前页面状态 const state router.getState() // state.index → 栈中位置1 栈底 // state.name → 页面名称如 DetailPage // state.path → 页面路径如 pages/DetailPage // 清空路由栈返回首页 router.clear()五、返回值传递推荐用 Provide/Consume 或 AppStorageRouter 的back()不支持直接传参推荐用共享状态// 方案1AppStorage全局键值存储 // 详情页写入 AppStorage.SetOrCreate(selectedId, 42) router.back() // 列表页读取生命周期 onPageShow 中 onPageShow(): void { const id AppStorage.Getnumber(selectedId) if (id ! undefined) { this.selectedId id AppStorage.Delete(selectedId) } } // 方案2Provide/Consume 共享见 article26六、路由模式pushUrl 第二参数// 默认Standard允许多个相同页面实例 router.pushUrl({ url: pages/DetailPage }, router.RouterMode.Standard) // Single同一 URL 只允许一个实例防重复入栈 router.pushUrl({ url: pages/DetailPage }, router.RouterMode.Single)模拟器运行截图初始状态API 演示选项卡pushUrl 跳转后点击「pushUrl跳转到详情页」后路由栈深度增加 1当前路由变为Index注意本演示将 Index 自身入栈模拟跳转效果实际项目应跳转到DetailPage。实测结果操作路由栈深度变化当前页面初始1IndexpushUrl1 2IndexpushUrl 再次1 3Indexback()-1 2IndexreplaceUrl不变 2Indexclear()→ 1Index常见问题QpushUrl和Navigation组件有什么区别Arouter.pushUrl适合简单页面跳转使用场景广泛HarmonyOS 2.0 起支持Navigation组件HarmonyOS 4.0 引入类似 iOSUINavigationController内置标题栏、返回按钮、转场动画更适合复杂导航结构Q如何防止用户快速点击导致重复入栈A使用RouterMode.Single或在跳转前加防抖let isNavigating false function safePush(url: string): void { if (isNavigating) { return } isNavigating true router.pushUrl({ url }, () { isNavigating false }) }Q如何实现“返回到任意页面“不是上一页A使用router.back({ url: pages/HomePage })直接跳回指定页面会出栈中间所有页面。也可以用router.clear()清空栈后再pushUrl。上一篇数据持久化Preferences第三批21-30 篇完结。涵盖 TaskPool 并发、Sendable 数据共享、文本输入、布局系统、状态管理、跨组件通信、动画、HTTP、持久化、路由十大主题均经模拟器验证并附截图。

相关新闻

简历突出封测EDA工程师项目经验|高分写法+实操模板

简历突出封测EDA工程师项目经验|高分写法+实操模板

封测EDA工程师简历核心痛点:大部分人只写“画图、校验、改版图”,像打杂。HR真正想看的是:你能不能降本、提效、稳良率、解决量产问题、会自动化、懂工艺落地。下面给出专属封测EDA的项目经验突出逻辑、筛选重点、标准句式、避坑要点和可直接…

2026/7/18 10:12:02阅读更多 →
Buzz语音转录工具实测:如何用本地化AI解决音频处理的核心痛点?

Buzz语音转录工具实测:如何用本地化AI解决音频处理的核心痛点?

Buzz语音转录工具实测:如何用本地化AI解决音频处理的核心痛点? 【免费下载链接】buzz Buzz transcribes and translates audio offline on your personal computer. Powered by OpenAIs Whisper. 项目地址: https://gitcode.com/GitHub_Trending/buz/b…

2026/7/18 10:07:02阅读更多 →
Magisk_AsoulOpt终极指南:3分钟解决Android游戏卡顿问题

Magisk_AsoulOpt终极指南:3分钟解决Android游戏卡顿问题

Magisk_AsoulOpt终极指南:3分钟解决Android游戏卡顿问题 【免费下载链接】Magisk_AsoulOpt 项目地址: https://gitcode.com/GitHub_Trending/ma/Magisk_AsoulOpt 还在为手机游戏卡顿、掉帧而烦恼吗?作为Android游戏玩家,你是否经常遇…

2026/7/18 10:07:02阅读更多 →
解放双手的鸣潮智能辅助:告别重复操作,专注游戏乐趣

解放双手的鸣潮智能辅助:告别重复操作,专注游戏乐趣

解放双手的鸣潮智能辅助:告别重复操作,专注游戏乐趣 【免费下载链接】ok-wuthering-waves 鸣潮 后台自动战斗 自动刷声骸 一键日常 Automation for Wuthering Waves 项目地址: https://gitcode.com/GitHub_Trending/ok/ok-wuthering-waves 你是否…

2026/7/18 12:22:59阅读更多 →
TI 18xx芯片AWR寄存器深度解析:复位、时钟、安全与内存配置实战

TI 18xx芯片AWR寄存器深度解析:复位、时钟、安全与内存配置实战

1. 项目概述与核心价值在嵌入式系统开发,尤其是汽车电子和工业控制这类对可靠性和实时性要求严苛的领域,芯片的“上电-复位-时钟”这一启动与运行链条是决定整个系统稳定性的基石。很多工程师在项目初期往往更关注应用层功能实现,而将底层电源…

2026/7/18 12:22:59阅读更多 →
如何深度优化Ryzen处理器性能:SMUDebugTool实战指南

如何深度优化Ryzen处理器性能:SMUDebugTool实战指南

如何深度优化Ryzen处理器性能:SMUDebugTool实战指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gitc…

2026/7/18 12:22:59阅读更多 →
MIPI CSI-2接口寄存器配置实战:从时钟时序到图像稳定传输

MIPI CSI-2接口寄存器配置实战:从时钟时序到图像稳定传输

1. 项目概述:从寄存器手册到实战配置在嵌入式图像处理系统里,调试摄像头接口,尤其是MIPI CSI-2,常常是硬件工程师和驱动开发者的“硬骨头”。你可能会遇到图像花屏、数据丢帧,或者系统功耗莫名偏高的问题。很多时候&am…

2026/7/18 12:22:59阅读更多 →
Python面试必备:字符串、列表与字典操作详解

Python面试必备:字符串、列表与字典操作详解

1. Python面试问题精选解析(21-40题) 作为Python开发者,面试中经常会被问到各种基础知识和实际问题。下面我将详细解析第21到40题的Python面试问题,这些问题涵盖了字符串处理、列表操作、字典使用等核心知识点。 1.1 字符串处理相关问题 1.1.1 字符串…

2026/7/18 12:22:59阅读更多 →
Cadence Allegro多根走线功能在高速PCB设计中的应用与优化

Cadence Allegro多根走线功能在高速PCB设计中的应用与优化

1. Cadence Allegro多根走线功能的核心价值在高速PCB设计中,总线结构(如DDR内存总线、PCIe差分对、LVDS接口等)往往需要同时处理数十根甚至上百根走线。传统单根走线方式不仅效率低下,更难以保证线间间距的一致性。Allegro的多根走…

2026/7/18 12:17:59阅读更多 →
VSCode TypeScript 环境配置对比:全局安装 vs 项目本地安装的4个关键差异

VSCode TypeScript 环境配置对比:全局安装 vs 项目本地安装的4个关键差异

VSCode TypeScript 环境配置对比:全局安装 vs 项目本地安装的4个关键差异当你在VSCode中启动一个新的TypeScript项目时,第一个技术决策往往从安装方式开始。这个看似简单的选择——全局安装还是项目本地安装——实际上会深刻影响你的开发流程、团队协作和…

2026/7/18 10:49:13阅读更多 →
智慧树刷课插件:5分钟实现自动化学习的智能助手

智慧树刷课插件:5分钟实现自动化学习的智能助手

智慧树刷课插件:5分钟实现自动化学习的智能助手 【免费下载链接】zhihuishu 智慧树刷课插件,自动播放下一集、1.5倍速度、无声 项目地址: https://gitcode.com/gh_mirrors/zh/zhihuishu 智慧树刷课插件是一款专为智慧树在线教育平台设计的Chrome浏…

2026/7/18 8:49:08阅读更多 →
Steam创意工坊下载器WorkshopDL:跨平台游戏模组获取的终极解决方案

Steam创意工坊下载器WorkshopDL:跨平台游戏模组获取的终极解决方案

Steam创意工坊下载器WorkshopDL:跨平台游戏模组获取的终极解决方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 你是否在GOG或Epic Games Store购买了心仪的游戏…

2026/7/17 13:22:23阅读更多 →
从模糊意图到可执行指令:Claude PRD中Prompt Engineering与需求颗粒度的5级映射法则

从模糊意图到可执行指令:Claude PRD中Prompt Engineering与需求颗粒度的5级映射法则

更多请点击: https://kaifayun.com 第一章:从模糊意图到可执行指令:Claude PRD中Prompt Engineering与需求颗粒度的5级映射法则 在Claude驱动的产品需求文档(PRD)生成实践中,原始业务意图往往以自然语言片…

2026/7/18 0:00:14阅读更多 →
Cursor配置生成失效?3大隐藏陷阱+4行修复代码,资深工程师连夜整理的紧急补救清单

Cursor配置生成失效?3大隐藏陷阱+4行修复代码,资深工程师连夜整理的紧急补救清单

更多请点击: https://codechina.net 第一章:Cursor配置生成失效?3大隐藏陷阱4行修复代码,资深工程师连夜整理的紧急补救清单 Cursor 配置生成突然失效,是近期高频报障场景。表面看是 cursor.config.json 未更新或 LSP…

2026/7/18 0:00:14阅读更多 →
某智驾大牛创业

某智驾大牛创业

作者:钟声编辑:Mark出品:红色星际头图:智能驾驶图片据悉,国内某头部智驾公司端到端模型技术大牛Z投身创业,并且已经拿到融资。Z不仅是该头部公司内部最年轻的对标阿里P10级别技术负责⼈,更是业内…

2026/7/18 0:00:14阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/17 22:48:46阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/17 13:22:38阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/17 17:26:50阅读更多 →