当前位置: 首页 > news >正文

harmonyos的鸿蒙的跳转页面的部署参数传递

使用编译器环境,

harmonyOs 5.1

代码如下:

Button("跳转到测试1").onClick(()=>{router.pushUrl({url: "pages/test",params: { name: '鸿蒙ArkTS教程' } // 可携带参数}).then(() => {console.log('跳转成功')}).catch((err:Error) => {console.log('跳转失败:' + err.message)})})

携带参数“鸿蒙ArkTS教程”到下一页面。

下一页面test.ets代码如下:

import router from '@ohos.router'interface RouterParams {name?: string
}

@State private name: string = ''aboutToAppear() {// 🔹 接收参数// 🔹 接收参数(router 必须正确导入)const params: RouterParams = router.getParams() as RouterParamsif (params && params.name) {this.name = params.name}}

在页面里的build加入:

Text(`传递过来的参数:${this.name}`).fontSize(20).fontColor(Color.Black)

完整代码如下:


import home from './daohanglan/home'  // 若在同一目录,用相对路径 './HomePage'
import router from '@ohos.router'interface RouterParams {name?: string
}@Entry
@Component
struct BottomNavExample {@State currentIndex: number = 0private tabs: string[] = ['首页', '购物车', '我的']@State private name: string = ''aboutToAppear() {// 🔹 接收参数// 🔹 接收参数(router 必须正确导入)const params: RouterParams = router.getParams() as RouterParamsif (params && params.name) {this.name = params.name}}build() {Column() {Text(`传递过来的参数:${this.name}`).fontSize(20).fontColor(Color.Black)Column(){// 页面内容区域if (this.currentIndex === 0) {home()} else if (this.currentIndex === 1) {CartPage()} else {MinePage()}}.height('95%')// 底部导航栏Row({ space: 30 }) {ForEach(this.tabs, (tab:string, index) => {Column() {Text(tab).fontSize(18).fontColor(this.currentIndex === index ? Color.Blue : Color.Gray).onClick(() => {this.currentIndex = index})}.width('33%').alignItems(HorizontalAlign.Center)}, (tab:string) => tab)}.padding({ top: 12, bottom: 30 }) // ✅ 增加底部留白.border({ width: 5, color: '#ddd' }).justifyContent(FlexAlign.SpaceAround)}.height("100%").justifyContent(FlexAlign.SpaceBetween)}
}
// ---------------- 子页面组件 ----------------
@Component
struct HomePage {build() {Column() {Text('🏠 这里是首页内容').fontSize(22).fontWeight(FontWeight.Bold)}.justifyContent(FlexAlign.Center).alignItems(HorizontalAlign.Center)}
}@Component
struct CartPage {build() {Column() {Text('🛒 购物车页面').fontSize(22).fontWeight(FontWeight.Bold)}.justifyContent(FlexAlign.Center).alignItems(HorizontalAlign.Center)}
}@Component
struct MinePage {build() {Column() {Text('👤 我的页面').fontSize(22).fontWeight(FontWeight.Bold)}.justifyContent(FlexAlign.Center).alignItems(HorizontalAlign.Center)}
}

运行效果:

http://www.dtcms.com/a/568811.html

相关文章:

  • Git 简介和基础使用
  • HarmonyOS Marquee组件深度解析:构建高性能滚动视觉效果
  • 网站建设绿茶科技zencart 网站建设
  • vscode arm交叉编译 中 cmakeTools 编译器设置
  • 全自动化立体仓库巷道堆垛机使用西门子1500PLC通过EtherCAT主站转Profinet实现与EtherCAT协议的伺服进行通讯方案案例
  • MAC M1系统用pyinstaller分别打包支持ARM系统的app和支持Inter系统的APP
  • MTK平台详解`adb devices`输出的序列号组成
  • uniapp实现的Tab 选项卡组件模板
  • 学习Linux——网络基础管理
  • 杭州做网站比较出名的公司有哪些网站 内容建设存在的问题
  • C# ASP.NET MVC Model 分类:数据传输对象(DTO)—— 跨层传数的 “精简快递“
  • Elasticsearch 7.0 介绍与配置详解
  • 如何理解前端开发中框架一词及其优点?
  • ELK学习记录
  • Paho MQTT C 客户端源码深入解析
  • 零基础学AI大模型之RAG系统链路构建:文档切割转换全解析
  • Vue 核心语法详解:模板语法中的绑定表达式与过滤器(附 Vue3 替代方案)
  • CentOS7.6 部署 k3s 单机版
  • 【算法训练营 · 专项练习篇】Stream流与函数式编程
  • 泰州企业做网站百度地图怎么导航环线
  • int8_to_float(output_tensor->data.int8, output_float, load_class_num);
  • 使用Nmap扫描某个服务器所有开放端口
  • 如何看网站是用什么程序做的如何把qq音乐导入到wordpress
  • SpringCloud网关实战:路由与鉴权全解析
  • 基于ResNet50和PyTorch的猫狗图像分类系统设计与实现
  • 自回归模型例题(AR)与ACF/PACF图绘制
  • ESP32-WROOM-32E LED点灯系列
  • 《红色脉络:一部PLMN在中国的演进史诗 (1G-6G)》 第15篇 | 结语:无尽的前沿——PLMN的未来与中国的全球角色
  • 付网站开发费计入什么科目seo外包杭州
  • 外贸网站域名被封免费网络游戏大全