11-鸿蒙4.0学习之页面之间的参数传递

11-鸿蒙4.0学习之页面之间的参数传递

方法一

params

// 传参页面
import router from '@ohos.router'@Entry
@Component
struct LifeCycle1 {@State message: string = 'Hello World'@State isShow: boolean = falsebuild() {Row() {Column({ space: 20 }) {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)Button('跳转界面').onClick(() => {router.pushUrl({url: 'pages/LifeCycle2',params:{name:'小明',age:20}})})Button('切换').onClick(() => {this.isShow = !this.isShow})Divider()if (this.isShow) {LifeCycle1_son()}}.width('100%')}.height('100%')}// 页面显示onPageShow() {console.log('page1……onPageShow')}// 页面隐藏onPageHide() {console.log('page1……onPageHide')}// 页面返回onBackPress() {console.log('page1……onBackPress')}aboutToAppear() {console.log('组件本身……aboutToAppear')}// 组件析构销毁时触发:删除  移出aboutToDisappear() {console.log('组件本身……aboutToDisappear')}
}@Component
struct LifeCycle1_son {build() {Column() {Text('子组件').fontSize(50)}}// 组件渲染之前aboutToAppear() {console.log('LifeCycle1_son……aboutToAppear')}// 组件析构销毁时触发:删除  移出aboutToDisappear() {console.log('LifeCycle1_son……aboutToDisappear')}
}

接受参数页面

import router from '@ohos.router'let name = router.getParams()['name'] as string@Entry
@Component
struct LifeCycle2 {@State message: string = 'Hello World'build() {Row() {Column() {Text(name).fontSize(50)Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)Button('返回第一个页面').onClick(() => {router.back()})}.width('100%')}.height('100%')}// 页面显示onPageShow(){console.log('page2……onPageShow')}// 页面隐藏onPageHide(){console.log('page2……onPageHide')}// 页面返回onBackPress(){console.log('page2……onBackPress')}
}

// 应用程序之间数据共享
// AppStorage.Set(‘appName’,‘我是应用程序’)
AppStorage.SetOrCreate(‘appName’,‘我是应用程序所存储的数据’)

// 从应用对象身上取出数据
let appName:string = AppStorage.Get(‘appName’) as string

// 模拟器获取不到,真机可以显示出来

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/185972.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开发中针对接口返回的数据要不要做兼容的示例详解

开发中,针对接口返回的数据,要不要做兼容,可以查看以下示例; 基本数据类型为string、number、boolean都有属性,但是属性值为 undefined; 基本数据类型为null、undefined没有属性,会 报错 arr、…

Apache Hive3.1.3 遇到DATE_FORMAT转换2021年12月格式的问题

比如:需要将时间2021-12-28 00:00:00转换成2021-12的格式,用date_format会将2021-12转换成2022-12的问题。 解决方法: 方式一:大写的‘Y’换成‘y’ 方式二:字符串截取,substr 本博主推荐方式一&#xf…

Linux地址空间随机化

ASLR(Address Space Layout Randomization)在2005年被引入到Linux的内核 kernel 2.6.12 中,早在2004年就以补丁的形式引入。内存地址的随机化,意味着同一应用多次执行所使用内存空间完全不同,也意味着简单的缓冲区溢出攻击无法达到目的。 1.…

04_使用API_日期和时间

JDK 8 之前传统的日期、时间 Date 类 代表的是日期和时间 import java.util.Date;public class Test {public static void main(String[] args) {// 1. 创建一个Data对象,代表系统当前时间信息的Date d new Date();System.out.println(d); // 输出的是日期与当…

Oracle(2-8)Configuring the Database Archiving Mode

文章目录 一、基础知识1、Redo Log History2、NOARCHIVELOG Mode 非归档模式3、ARCHIVELOG Mode 归档模式4、Changing the Archiving Mode 更改归档模式![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d6a09f9a6de24de7bbcdad90b8d6b9ca.png)5、Auto and Manual Ar…

MybtisPlus快速开发(从controller到mapper)

创建新项目 写好配置文件 server:port: 8905#配置MP控制台打印日志 mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImplspring:datasource:type: com.zaxxer.hikari.HikariDataSourcedriver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:m…

接手项目要做的事项

总结:在接手别人的项目时,至少应该自己整理并绘画四个图 1、产品脑图:帮助你理解产品的功能; 2、UML时序图:帮助你源代码的核心技术实现; 3、整体业务泳道图:帮助你从整体上熟悉业务的流程&a…

联想M7400W激光打印机加粉清零方法

基本参数 产品定位:多功能商用一体机 产品类型:黑白激光多功能一体机 涵盖功能:打印、复印、扫描 最大处理幅面:A4 耗材类型:鼓粉分离 耗材容量:硒鼓LD2451 12000页,墨粉LT2451 1500页、L…

Android 11.0 修改Android系统的通知自动成组的数量

场景: Android 系统对显示在通知列表中的同一个应用的通知进行分组管理,即相同的packageName中,当通知数量达到系统默认指定的数量时,会自动成一组. Android 11.0 中系统默认的自动成组数如下所示: 核心路径 : frameworks/base/core/res/res/values/config.xml<!-- 来自同…

LaTex语法实现多种矩阵

矩阵 0 1 1 0 \begin{matrix} 0 & 1 \\ 1 & 0 \end{matrix} 01​10​ \begin{matrix}0 & 1 \\1 & 0 \end{matrix}小括号矩阵 ( 0 1 1 0 ) \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix} (01​10​) \begin{pmatrix}0 & 1 \\1 & 0 \end{pm…

腾讯面试笔试题2023.11.30

给定一个由整数组成的非空数组所表示的非负整数如[1,2,3]&#xff0c;在该数的基础上加一。 最高位数字存放在数组的首位&#xff0c; 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外&#xff0c;这个整数不会以零开头。 &#xff08;要求只能操作数组&#xff0c;不…

webpack的plugin和loader的区别

Webpack 的 Plugin 和 Loader 是用来处理模块和资源的两个不同的概念。 Loader 是Webpack 的模块转换器&#xff0c;用于将某种特定格式的内容转换为Webpack 可以处理的模块。它可以在构建流程中将各种类型的文件&#xff08;如 CSS、图片、ES6、TypeScript 等&#xff09;转换…

每日一练2023.11.30——谁先倒【PTA】

题目链接&#xff1a;谁先倒 题目要求&#xff1a; 划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为&#xff1a;每人口中喊出一个数字&#xff0c;同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和&#xff0c;谁就输了&#xff0…

PyCharm安装教程(详细步骤)

一、软件简介 PyCharm是一款Python IDE&#xff0c;其带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具&#xff0c;比如&#xff0c; 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等等。此外&#xff0c;该IDE提供了一些高…

在Linux上搭建JavaWeb项目运行环境

文章目录 安装JDK安装Tomcat安装数据库 安装JDK 安装Oracle官方的JDK比较麻烦&#xff0c;我们在此处选择安装开源社区维护的openjdk。他们俩的差别不大且兼容。 安装Tomcat 我们把本地下载好的 tomcat.zip 包拖到Linux页面上&#xff0c;让Linux也有一个zip包&#xff0c;再…

Springboot整合mybatis_plus报错办法

问题详情&#xff1a;java.lang.IllegalArgumentException: Invalid value type for attribute ‘factoryBeanObjectType’: 问题背景&#xff1a; springboot 3.2.0 mybatis_plus:3.5.4.1 解决方法1&#xff08;经验证&#xff09;&#xff1a; 导入mybatis-spring包即可 &…

Python 计算图像差分的三种方式(cv2,torchvision,numpy)

前言&#xff1a;最近在可视化图像残差时&#xff0c;发现几种不同的差分方法&#xff0c;下面分别给出每种差分方法的实现方式&#xff0c;并比较不同方法之间的差异。 目录 1️⃣ cv22️⃣ PIL & torchvision3️⃣ PIL & numpy 目标&#xff1a;对于给定的下述两张图…

MacOS + Android Studio 通过 USB 数据线真机调试

环境&#xff1a;Apple M1 MacOS Sonoma 14.1.1 软件&#xff1a;Android Studio Giraffe | 2022.3.1 Patch 3 设备&#xff1a;小米10 Android 13 一、创建测试项目 安卓 HelloWorld 项目: 安卓 HelloWorld 项目 二、数据线连接手机 1. 手机开启开发者模式 参考&#xff1…

代码随想录算法训练营第四十八天【动态规划part09】 | 198.打家劫舍、213.打家劫舍II、337.打家劫舍III

198.打家劫舍 题目链接&#xff1a; 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 求解思路&#xff1a; 当前房屋偷与不偷取决于前一个房屋是否被偷了 动规五部曲 确定dp数组及其下标含义&#xff1a;考虑下标i&#xff08;包括i&#xff09…

Qt串口助手

QT5 串口助手 ​ 由于C课程作业的需要&#xff0c;用QT5写了个简陋的串口助手。只作为一个简单的案例以供参考&#xff0c;默认读者具有C基础和了解简单的Qt操作。 功能展示 【用QT写了个简单的串口助手】 准备工作 Qt自带有<QSerialPort> 库, 可以方便地配置和调用…