鸿蒙 DevEcoStudio:组件实例(页面及组件生命周期函数)

2024-05-07 08:44

本文主要是介绍鸿蒙 DevEcoStudio:组件实例(页面及组件生命周期函数),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【使用onPageshow等生命周期函数】

在entry/src/main/ets/pages路径下创建Page1.ets:

import router from '@ohos.router'
@Entry
@Component
struct Page1 {@State message: string = 'Hello World'@State show: boolean=trueaboutToAppear(){console.log('Page1组件创建实例')}aboutToDisappear(){console.log('Page1组件销毁')}onPageShow(){console.log('page1页面展示')}onPageHide(){console.log("page1页面隐藏")}build() {Column() {Button('show').onClick(()=>{this.show=!this.show})if (this.show){ComponentA()}Button('跳转到Page2').onClick(()=>{router.pushUrl({url:"pages/Page2"})})Button('跳转到Page3').onClick(()=>{router.replaceUrl({url:"pages/Page3"})})}.width('100%').height('100%')}
}
@Component
struct ComponentA{aboutToAppear(){console.log('componentA组件创建实例')}aboutToDisappear(){console.log('componentA组件销毁');}build(){Text('compontent A')}
}

在entry/src/main/ets/pages路径下同样创建Page2.ets和Page3.ets:

1.Page2.ets内容:

@Entry
@Component
struct Page2 {@State message: string = 'Page2内容'onPageShow(){console.log('page2页面展示')}onPageHide(){console.log("page2页面隐藏")}onBackPress(){console.log("Page2页面返回")}build() {Row() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)}.width('100%')}.height('100%')}
}

2.Page3.ets内容:

@Entry
@Component
struct Page3 {@State message: string = 'Page3内容'onPageShow(){console.log('page3页面展示')}onPageHide(){console.log("page3页面隐藏")}build() {Row() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)}.width('100%')}.height('100%')}
}

在下边点击Log->HiLog,中间最左边的下拉菜单选择Phone,查看效果,如图:

这篇关于鸿蒙 DevEcoStudio:组件实例(页面及组件生命周期函数)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/966873

相关文章

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

华为鸿蒙HarmonyOS 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

java String.join()方法实例详解

《javaString.join()方法实例详解》String.join()是Java提供的一个实用方法,用于将多个字符串按照指定的分隔符连接成一个字符串,这一方法是Java8中引入的,极大地简化了... 目录bVARxMJava String.join() 方法详解1. 方法定义2. 基本用法2.1 拼接

C++ RabbitMq消息队列组件详解

《C++RabbitMq消息队列组件详解》:本文主要介绍C++RabbitMq消息队列组件的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. RabbitMq介绍2. 安装RabbitMQ3. 安装 RabbitMQ 的 C++客户端库4. A

Linux lvm实例之如何创建一个专用于MySQL数据存储的LVM卷组

《Linuxlvm实例之如何创建一个专用于MySQL数据存储的LVM卷组》:本文主要介绍使用Linux创建一个专用于MySQL数据存储的LVM卷组的实例,具有很好的参考价值,希望对大家有所帮助,... 目录在Centos 7上创建卷China编程组并配置mysql数据目录1. 检查现有磁盘2. 创建物理卷3. 创

Java List排序实例代码详解

《JavaList排序实例代码详解》:本文主要介绍JavaList排序的相关资料,Java排序方法包括自然排序、自定义排序、Lambda简化及多条件排序,实现灵活且代码简洁,文中通过代码介绍的... 目录一、自然排序二、自定义排序规则三、使用 Lambda 表达式简化 Comparator四、多条件排序五、

Java实例化对象的​7种方式详解

《Java实例化对象的​7种方式详解》在Java中,实例化对象的方式有多种,具体取决于场景需求和设计模式,本文整理了7种常用的方法,文中的示例代码讲解详细,有需要的可以了解下... 目录1. ​new 关键字(直接构造)​2. ​反射(Reflection)​​3. ​克隆(Clone)​​4. ​反序列化

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

Python Selenium动态渲染页面和抓取的使用指南

《PythonSelenium动态渲染页面和抓取的使用指南》在Web数据采集领域,动态渲染页面已成为现代网站的主流形式,本文将从技术原理,环境配置,核心功能系统讲解Selenium在Python动态... 目录一、Selenium技术架构解析二、环境搭建与基础配置1. 组件安装2. 驱动配置3. 基础操作模