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

鸿蒙4.0开发笔记之DevEco Studio页面操作router的pushUrl页面跳转与back返回上一页(五)

一、认识组件

关于HarmonyOS中ArkTS的基础组件请参见文章鸿蒙4.0开发笔记之ArkTs语言基础与基本组件结构(四)

二、实现页面跳转pushUrl

1、操作说明

实现页面跳转的核心便是router.pushUrl的调用,操作起来也很简单,总共就四步。实现步骤如下:
(1)在项目列表的page目录下创建一个新的页面
2.1.1
(2)创建button,并设定基本属性方法
2.1.2
(3)给button添加onclick事件方法
(4)在事件方法中调用router.pushUrl()事件方法,并设定需要跳转的页面的路径。

.onClick(()=>{//执行跳转到Target页面:使用router路由可以指定跳转到某个url页面router.pushUrl({//在entry>src>main>resources>base>profile>main_pages.json中可以找到整个项目所有的页面url:"pages/Target"})})

注意:可以在项目路径下的entry>src>main>resources>base>profile>main_pages.json中找到整个项目所有的页面。

2、实现代码
import router from '@ohos.router'
@Entry
@Component
struct Arrow {@State message: string = '鸿蒙Next'build() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)Button('点我跳转').fontSize(30).width('50%').height('50vp')//跳转页面动作.onClick(()=>{//执行跳转到Target页面:使用router路由可以指定跳转到某个url页面router.pushUrl({//在entry>src>main>resources>base>profile>main_pages.json中可以找到整个项目所有的页面url:"pages/Target"})})}//设置Column容器的宽、高.width('100%').height('100%')}
}

最终的实现效果就是,点击页面上的“点我跳转”按钮,就会成功跳转到“Target”页面。

三、返回上一个页面back

当页面跳转到“Target”页面后,如何在该页面返回到上一个页面呢?
其实只需要调用一个router.back()事件方法就OK了。实现代码如下:

import router from '@ohos.router'
@Entry
@Component
struct Target {@State message: string = '无际鹰'build() {Row() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold).fontStyle(FontStyle.Italic).backgroundColor(Color.Blue).fontColor(Color.Orange).onClick(()=>{//返回上一个页面,及从哪里跳转来的,就回到哪里去router.back()})}.width('100%')}.height('100%')}
}

这样的整体效果就是,在Arrow页面上点击页面上的“点我跳转”按钮,就会成功跳转到Target页面;然后在Target页面点击“无际鹰”就会跳转回Arrow页面。

http://www.lryc.cn/news/239652.html

相关文章:

  • 20个CSS函数-释放设计创造力和响应能力
  • Dubbo从入门到上天系列第十八篇:Dubbo引入注册中心简介以及DubboAdmin简要介绍,为后续详解Dubbo各种注册中心做铺垫!
  • CentOS8安装MySQL
  • Java集合拓展01
  • 【Django使用】md文档10大模块第5期:Django数据库增删改查和Django视图
  • 在AWS VPC中运行Nagios检查时指定自定义DNS解析器的选项
  • 【uniapp】触底加载事件 onReachBottom 不生效
  • Vue3简单使用(一) --- 环境搭建
  • 陪玩圈子系统APP小程序H5,详细介绍,源码交付,支持二开!
  • 目标检测原理
  • 2、数仓理论概述与相关概念
  • YOLOv5 分类模型 OpenCV和PyTorch两者实现预处理的差异
  • 使用NPOI处理EXCEL文件:例1-关于优化的一些问题
  • 连接k8s和凌鲨
  • C语言——结构体的应用
  • 人机交互——机器人形态
  • BGP的基础知识
  • 2023.11.18 每日一题(AI自生成应用)【C++】【Python】【Java】【Go】 动态时间序列分析
  • uniapp相关记录
  • 优质猫罐头有哪些品牌?分享5款宠物店自用值得推荐的猫罐头!
  • HTML新手入门笔记整理:HTML基本标签
  • Redis高级特性和应用(发布 订阅、Stream)
  • RoCE、IB和TCP等网络的基本知识及差异对比
  • c语言-操作符详解(含优先级与结合性)
  • ubuntu安装nvm
  • opengl制作天空盒
  • 单片机和FreeRTOS上跑机器人ROS的应用
  • Spring Cloud学习(十一)【深入Elasticsearch 分布式搜索引擎03】
  • 【gitlab初始密码登录失败】
  • 2017年全国硕士研究生入学统一考试管理类专业学位联考数学试题——解析版