news 2026/6/30 16:10:57

HarmonyOS ArkTS路由跳转

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HarmonyOS ArkTS路由跳转

一、什么是路由?

在鸿蒙应用开发中,路由(Router)的核心作用就是实现页面之间的跳转、页面栈管理、页面传参

我们日常开发的首页、登录页、注册页、详情页切换,全部依赖路由模块。

本文基于@ohos.router原生路由模块(课堂/初学最常用),手把手讲全所有用法、区别、传参、报错解决。

二、前置必备:路由配置(90%跳转报错的根源)

所有需要跳转的页面,必须在 main_pages.json 注册,否则跳转空白/报错。

路径:entry/src/main/resources/base/profile/main_pages.json

示例配置(对应你的项目页面):

三、路由模块导入(固定写法)

所有需要跳转的页面,第一行必须导入路由:

import router from '@ohos.router';

四、四大核心路由方法

1. router.pushUrl() 【最常用:保留上一页】

作用:打开新页面,保留当前页面,页面栈叠加,可以返回上一页。

使用场景:首页→登录、登录→注册、列表→详情

代码示例:

2. router.replaceUrl() 【替换页面:无法返回】

作用:用新页面替换当前页面,当前页面会被销毁,无法返回。

使用场景:登录成功跳首页、注册成功跳首页(防止返回登录页)

3. router.back() 【返回上一页】

作用:关闭当前页面,返回页面栈的上一级页面。

特点:如果是首页(页面栈只有一页),调用无效,不会闪退。

五、路由面传参

目标页:接收参数

六、结合你的项目:完整实战案例

跳登录页login.ets

注册页 Login1.ets 路由逻辑

完成跳转

首页页面Login.ets

七、常见报错 & 解决方案

1. 跳转空白、无反应

✅ 原因:main_pages.json 未注册页面 / 路径大小写错误

✅ 解决:核对路径、补全路由配置,重新编译项目

2. 页面跳转后无限返回

✅ 原因:全程只用 pushUrl,页面栈堆积过多

✅ 解决:登录成功使用 replaceUrl 替换页面

3. getParams 获取不到数据

✅ 原因:在 build 中直接获取,生命周期未加载完成

✅ 解决:在 aboutToAppear 生命周期中接收参数

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/30 16:10:14

【西安思源学院本科毕业论文】基于springboot的小型餐饮门店订单与库存管理系统的设计与实现

注:仅展示部分文档内容和系统截图,需要完整的视频、代码、文章和安装调试环境请私信up主。学生的技术与实现摘 要随着餐饮行业竞争日益激烈,小型餐饮门店在订单流转与原材料库存管理中,传统人工记录和纸质流转方式逐渐暴露出效率…

作者头像 李华
网站建设 2026/6/30 16:07:32

ArkTS传参

功能:通过输入框onChange实时收集账号密码,点击按钮onClick做非空校验;账号密码不为空则路由跳转首页并传递账号数据,为空弹出提示弹窗;首页接收路由参数展示欢迎文案,完整串联状态变量、输入变更事件、点击…

作者头像 李华
网站建设 2026/6/30 16:05:44

3步搞定艾尔登法环存档管理:终极角色迁移方案

3步搞定艾尔登法环存档管理:终极角色迁移方案 【免费下载链接】EldenRingSaveCopier 项目地址: https://gitcode.com/gh_mirrors/el/EldenRingSaveCopier 在《艾尔登法环》的世界里,数百小时的游戏进度是每个褪色者最宝贵的财富。然而&#xff0…

作者头像 李华