自学鸿蒙HarmonyOS的ArkTS语言<三>路由跳转及传参

【官方文档传送门】

一、导入模块
java 复制代码
import router from '@ohos.router'
二、新增页面配置
三、常用api

1、跳转到应用内的指定页面

java 复制代码
build() {
    Row() {
      Button('下一页')
          .onClick(() => {
            router.pushUrl({
              url: 'pages/Index2',
              params: {
                name: 'test'
              }
            })
          })
    }
    .height('100%')
  }

2、用应用内的某个页面替换当前页面,并销毁被替换的页面

router.replaceUrl({ url, params: {...} })

java 复制代码
build() {
    Row() {
      Button('下一页')
        .onClick(() => {
          router.replaceUrl({
            url: 'pages/Index2',
            params: {
              name: 'test'
            }
          })
        })
    }
    .height('100%')
  }

3、返回上一页面或指定的页面

java 复制代码
build() {
    Row() {
      Button('返回')
        .onClick(() => {
          router.back()
          // or
          router.back({
             url: '....'
		  })
        })
    }
    .height('100%')
  }

4、清空页面栈中的所有历史页面,仅保留当前页面作为栈顶页面。

java 复制代码
router.clear()

5、获取当前在页面栈内的页面数量

java 复制代码
router.getLength()

6、获取当前页面的状态信息

java 复制代码
router.getState()

7、获取url传参

注意:这里的参数key必须用 'xx' , 不能写成 .xx , 否则报如下错:

相关推荐
KevinChaos2 小时前
声音明信片实验室 03|HarmonyOS 7.0 音频空间化:双版本试听无缝切换
harmonyos
贾伟康3 小时前
【共创稿事节】HarmonyOS 7.0 Menu菜单与上下文:从接入到生产验证
性能优化·实战·harmonyos·arkts·arkui
行者-全栈开发4 小时前
Flutter 插件 device_calendar_plus 开源鸿蒙适配实战:从权限弹窗失灵到循环日程跑通
flutter·跨平台·harmonyos·arkts·日历·适配·开源鸿蒙
贾伟康6 小时前
【共创稿事节】HarmonyOS 7.0 BindSheet半模态浮层:从接入到生产验证
性能优化·实战·harmonyos·arkts·arkui
JosieBook6 小时前
【鸿蒙PC GUI适配】chiaki-ng 移植的工程实践:Qt6/QML 与 ArkUI 的混合窗口架构
华为·架构·harmonyos
Dream-Y.ocean15 小时前
鸿蒙PC平台宅匠 3D 室内设计适配实战:基于 Electron 壳方案的 Three.js 双渲染引擎与参数化户型编辑器开发
javascript·3d·harmonyos
行者-全栈开发15 小时前
【共创稿事节】HarmonyOS 应用上架全流程中的隐私合规:权限最小化、数据本地化与 AppAnalyzer 体检
harmonyos·鸿蒙·隐私合规·应用上架·agc·appanalyzer
贾伟康16 小时前
HarmonyOS API 26 UKey PIN 授权门禁:状态查询、失败归因与资源闭环
华为·harmonyos
Dream-Y.ocean1 天前
鸿蒙PC平台星图遥感适配实战:基于 Electron 壳方案的纯 JavaScript 遥感图像处理引擎开发
javascript·electron·harmonyos
七月稻草人1 天前
鸿蒙平板能当电脑第二块屏幕吗?ToDesk、向日葵镜像/副屏实测
华为·电脑·harmonyos