自学鸿蒙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 , 否则报如下错:

相关推荐
Georgewu10 小时前
【HarmonyOS 7】DevEco Code安装与使用
harmonyos
Georgewu13 小时前
【HarmonyOS 7】鸿蒙应用开发如何屏蔽剪切板
harmonyos
谷子在生长2 天前
纯血鸿蒙自定义弹窗最佳实践:从「到处复制」到「一行调用」
前端·harmonyos
小魔女千千鱼2 天前
把 Go 塞进鸿蒙PC:windows上用 c-shared 跑 2048
harmonyos
TrisighT2 天前
Electron 跑在鸿蒙 PC 上,单窗口和多窗口内存差 800MB?我抓了 5 组数据
性能优化·electron·harmonyos
TrisighT3 天前
AI写埋点代码,35%覆盖率坑惨运营
harmonyos·arkts·arkui
Junerver6 天前
把 DevEco Code 的 HarmonyOS 开发能力装进口袋——harmonyos-dev-skill
harmonyos
程序猿追7 天前
那个右下角的小数字怎么“卡”住我打字——我用 HarmonyOS 自己写了一个字数限制输入框
pytorch·华为·harmonyos
古德new7 天前
鸿蒙PC使用electron迁移:Joplin Electron 桌面适配全记录
华为·electron·harmonyos