HarmonyOS 路由传参

本文 我们来说两个page界面间的数据传递

路由跳转 router.pushUrl 之前我们用了不少了 但是我们只用了它的第一个参数 url

其实他还有个params参数

我们第一个组件可以编写代码如下

typescript 复制代码
import router from '@ohos.router'
@Entry
@Component
struct Index {

  build() {
    Row() {
      Column() {
        Button("跳转").onClick(()=>{
          router.pushUrl({
            url: "pages/AppView",
            params: {
              name: "小猫猫",
              age: 20
            }
          })
        })
      }
      .width('100%')
    }
    .height('100%')
  }
}

这里 我们button按钮设置点击事件 调用 router.pushUrl 跳转向 pages/AppView 页面

然后第二个参数 params 是一个对象 键值对 就是我们要传递给下一个界面的参数

我们第二个界面这样写

typescript 复制代码
import router from '@ohos.router'

let name:string = router.getParams()["name"]
let age:number = router.getParams()["age"]

@Entry
@Component
struct AppView {
  build() {
    Row() {
      Column(){
        Text(name)
        Text(""+age)
      }
      .width('100%')
    }
    .height('100%')
  }
}

通过 router.getParams 就可以取到上一个界面传过来的值 然后 后面一对数组括号 告诉它你要取哪个字段

然后 我们用text组件展示内容 因为text 不能用数字 所以我们要用 字符串加的方式 将age转存字符串类型的

我们开启预览模式 运行index组件

然后点击按钮

跳转后 第二个界面也就顺利的拿到了传过来的参数

相关推荐
Navicat中国2 小时前
Navicat Premium Lite 正式登录鸿蒙应用市场
数据库·华为·harmonyos·navicat
攻城狮在此5 小时前
华为eNSP网络模拟器安装,实验环境搭建
网络·华为
轻口味5 小时前
HarmonyOS 6 原生图表库 qCharts 深度解析:高性能、全场景交互的 ArkUI 实战
华为·交互·harmonyos
qq_553760326 小时前
Harmony OS:全模态对话框(广告)与文本切换功能实现
harmonyos·鸿蒙
搞瓶可乐7 小时前
【HarmonyOS开发】鸿蒙应用开发发展史:从技术探索到生态爆发,一文读懂其演进脉络
harmonyos·arkts
互联网散修7 小时前
鸿蒙(HarmonyOS)ArkTS 实战: animateTo属性动画实现连续涟漪扩散
华为·harmonyos·鸿蒙属性动画
lxysbly11 小时前
鸿蒙harmonyos端怀旧游戏模拟器,支持fc红白机 街机 gba psp ps1 nds n64世嘉md gbc gb sfc等主机
游戏·华为·harmonyos
ShuiShenHuoLe12 小时前
02Navigation页面路由
harmonyos·鸿蒙
飞凌嵌入式12 小时前
飞凌嵌入式RK3506J核心板通过OpenHarmony 5.1兼容性认证
嵌入式硬件·开源·鸿蒙