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

相关推荐
zSD55rt5a6 分钟前
方差在扩散模型保护中的作用
人工智能·harmonyos
AD022718 分钟前
HarmonyOS应用实战-启示散页-05-随机抽答案要避免连续重复:把算法放进服务层
harmonyos·arkts·鸿蒙开发
世人万千丶27 分钟前
鸿蒙Flutter Flexible与Expanded的区别
学习·flutter·harmonyos·鸿蒙
红烧大青虫1 小时前
setInterval 倒计时实现:60s 验证码发送逻辑
后端·华为·harmonyos·鸿蒙系统
程序员黑豆1 小时前
鸿蒙应用开发中的单位详解:px、vp、fp、lpx
前端·harmonyos
YM52e1 小时前
鸿蒙Flutter Center居中组件:Align对齐详解
android·学习·flutter·华为·harmonyos·鸿蒙
tyqtyq222 小时前
HarmonyOS AI 应用开发实战:英语口语情景对话系统
人工智能·生活·harmonyos·鸿蒙·宠物
listening7772 小时前
HarmonyOS 6.1 性能调优实战:从卡顿到丝滑的6个底层逻辑
华为·harmonyos
程序员黑豆2 小时前
鸿蒙开发入门:Row 和 Column 布局组件详解
前端·harmonyos
xd1855785553 小时前
[特殊字符] 宠物美容指南 —— 鸿蒙AI智能助手开发全流程解析
人工智能·华为·harmonyos·鸿蒙·宠物