ArkTS基础知识
ArkTS基础知识
ArkUI开发框架

ArkTS声明式开发范式

装饰器:
用来装饰类,结构体,方法及变量。如:
@Entry:入口组件
@Component :表示自定义组件
@State 都是装饰器:组件中的状态变量,该状态的变化回引起UI的变更
自定义组件:
@Component 就是可以复用的UI单元,可组合其他组件,如上述被 @Component 装饰的 struct Hello。
UI描述
声明式的方式来描述 UI 的结构,如上述 build() 方法内部的代码块。
内置组件
框架中默认内置的基础和布局组件,可直接被开发者调用,比如示例中的 Column、Text、Divider、Button。
事件方法:
用于添加组件对事件的响应逻辑,统一通过事件方法进行设置,如跟随在Button后面的onClick()。
属性方法:
用于组件属性的配置,统一通过属性方法进行设置,如fontSize()、width()、height()、color() 等,可通过链式调用的方式设置多项属性。
用 @State 装饰过的变量,包含了一个基础的状态管理机制,变量值的变化会自动触发相应的 UI 变更 ,ArkUI 中进一步提供了多维度的状态管理机制,和 UI 相关联的数据,不仅可以在组件内使用,还可以在不同组件层级间传递,比如父子组件之间,爷孙组件之间,也可以是全局范围内的传递,还可以是跨设备传递。另外,从数据的传递形式来看,可分为只读的单向传递和可变更的双向传递。开发者可以灵活的利用这些能力来实现数据和 UI 的联动。
ArkUI完整的开发范式可参考这里:
https://developer.harmonyos.com/cn/docs/documentation/doc-guides/arkui-overview-0000001281480754
相关文章:
ArkTS基础知识
ArkTS基础知识 ArkUI开发框架 ArkTS声明式开发范式 装饰器: 用来装饰类,结构体,方法及变量。如: Entry:入口组件 Component :表示自定义组件 State 都是装饰器:组件中的状态变量,该…...
Kotlin学习(二)
2.kotlin学习(二) 1.条件控制 package com.simon.secondfun main(args: Array<String>) {//ifvar a 1var b 2var max:Intif (a > b){max a}else{max b}//作为表达式结果赋值给max1 感觉这个简单啊var max1 if(a>b)a else bprintln(ma…...
LangChain 6根据图片生成推广文案HuggingFace中的image-caption模型
根据图片生成推广文案, 用的HuggingFace中的image-caption模型 LangChain 实现给动物取名字,LangChain 2模块化prompt template并用streamlit生成网站 实现给动物取名字LangChain 3使用Agent访问Wikipedia和llm-math计算狗的平均年龄LangChain 4用向量数…...
QFontDialog开发详解
QFontDialog 类是 Qt 框架中用于选择字体的对话框类。它允许用户选择字体的各种属性,如字体名称、字号、粗体、斜体等。以下是 QFontDialog 的一些常见用法和详解: 一、QFontDialog基本用法 #include <QApplication> #include <QFontDialog> #include <QMes…...
【C++进阶之路】第七篇:异常
文章目录 一、C语言传统的处理错误的方式二、 C异常概念三、异常的使用1.异常的抛出和捕获2.异常的重新抛出3.异常安全4.异常规范 四、自定义异常体系五、C标准库的异常体系(了解)六、异常的优缺点 一、C语言传统的处理错误的方式 传统的错误处理机制&am…...
shell 判断文件是否存在(csh bash)
文章目录 前言1. -e 判断文件是否存在2. -f 判断文件是否存在且为普通文件3. -d 判断文件是否存在且为目录3. -s 判断文件是否存在且不为空4. -r 判断文件是否存在且可读5. -w 判断文件是否存在且可写6. -x 判断文件是否存在且可执行 前言 Shell 编程能提升我们工作效率&#…...
第六年到第十年是分水岭
我今年懈怠了,觉得就这样了,看到知乎上有个大神的帖子,深受触动,前五年都差不多,第六年到第十年才是分水岭,是否愿意继续努力,才是关键。拷贝如下: 作者:技术王 来源&…...
关于标准库中的string类 - c++
目录 关于string类 string类的常用接口 string类常用接口的简单模拟实现 关于string类 string类在cplusplus.com的文档介绍 1. string是表示字符串的字符串类 2. 该类的接口与常规容器的接口基本相同,再添加了一些专门用来操作string的常规操作。 3. string在…...
Chrome添加扩展程序
Crx4Chrome 下载crx 打开扩展程序 如果拖动crx文件到扩展程序提示只能通过Chrome应用商店添加此项内容 修改crx文件后缀为zip并解压,再拖动到扩展程序 Vue.js devtools...
C++单调向量算法:132模式枚举1简洁版
本题不同解法 包括题目及代码C二分查找算法:132 模式解法一枚举3C二分查找算法:132 模式解法二枚举2代码简洁C二分查找算法:132 模式解法三枚举1性能最佳C单调向量算法:132 模式解法三枚举1代码更简洁C二分查找算法:1…...
【ARFoundation学习笔记】2D图像检测跟踪
写在前面的话 本系列笔记旨在记录作者在学习Unity中的AR开发过程中需要记录的问题和知识点。主要目的是为了加深记忆。其中难免出现纰漏,更多详细内容请阅读原文以及官方文档。 汪老师博客 文章目录 2D图像检测创建一个图像检测工程图像追踪的禁用和启用多图像追踪…...
计算机算法分析与设计(24)---分支限界章节复习
文章目录 一、分支界限法介绍二、旅行商问题应用三、装载问题应用3.1 问题介绍与分析3.2 例题 四、0-1背包问题应用4.1 问题介绍与分析4.2 例题 一、分支界限法介绍 二、旅行商问题应用 三、装载问题应用 3.1 问题介绍与分析 3.2 例题 四、0-1背包问题应用 4.1 问题介绍与分析…...
二十三种设计模式-解密状态模式:优雅地管理对象状态
在软件开发中,经常会遇到需要根据对象的状态来改变其行为的情况。传统的实现方式可能涉及到大量的条件语句或者使用标志位来跟踪状态,导致代码复杂、难以维护。 而状态模式(State Pattern)可以提供一种优雅且灵活的解决方案&#…...
git常常用命令
这篇文章中,一些简单的,大家都知道的git 命令我就不再赘述,我只写出来最近在项目中常用到的一些命令。这些命令可以帮助我更好的开发。 git stash 请大家设想下面的场景,你的本地有两个分支,develop,fix分支…...
C语言中的大端字节序和小端字节序是什么?如何进行字节序的转换?
C语言中的大端字节序和小端字节序以及字节序的转换 引言 在计算机科学中,字节序是指多字节数据在存储或传输过程中字节的排列顺序。在C语言中,特别是在涉及二进制数据的处理、网络通信以及硬件相关的编程中,了解大端字节序和小端字节序的概…...
Flutter dio Http请求之Cookie管理
在应用开发过程中,我们进行Http通讯时会使用Cookie进行验证,今天我们就着重讲解Flutter 网络请求插件dio的cookie使用。 首先,我们要进行插件引用 # HTTP 请求 dio: ^5.1.1 cookie_jar: ^4.0.8 dio_cookie_manager: ^3.0.0# 获取沙盒路径 p…...
计算机网络的标准化工作及相关组织
一、国际化组织 计算机网络的标准化工作由一些主要的组织来进行管理和推动。以下是几个主要的计算机网络标准化的国际组织及其相关的标准: 1. 国际标准化组织(ISO):国际标准化组织负责制定各种行业的标准,包括计算机…...
智能座舱架构与芯片- (11) 软件篇 上
一、智能汽车基础软件平台分类 汽车软件主要分为应用软件和基础软件。应用软件和业务形态高度关联,不同控制器的应用软件之间差异较大。基础软件介于应用软件和硬件之间,用于屏蔽硬件特性、支撑应用软件。可有效地实现应用软件与硬件之间解耦࿰…...
2021秋招-算法-递归
算法-递归 教程: ⭐告别递归,谈谈我的一些经验 LeetCode刷题总结-递归篇 基础框架 leetcode刷题 1.leetcode-101. 对称二叉树-简单 101. 对称二叉树 给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。…...
【Django-02】 Model模型和模型描述对象Meta
Model和Meta 概念ModelMetaModel支持的字段类型Meta 属性例子 概念 就是对象的意思,底层一个Model对应一张表,而Meta是Model的内部类,是用来描述Model和数据库表的相关元数据信息,比如主键,排序,unique_ke…...
科技巨头平台战争:生态战略、技术驱动与从业者实战指南
1. 平台战争的核心逻辑:从“卖产品”到“圈用户” 在科技行业摸爬滚打了十几年,我亲眼见证了竞争焦点的几次重大转移。早期大家拼的是硬件参数和软件功能,后来开始讲“用户体验”,而最近这十年,整个战场的核心词汇变成…...
告别Root:用ADB命令玩转Android导航栏,隐藏返回/主页键的另类妙用
告别Root:用ADB命令玩转Android导航栏,隐藏返回/主页键的另类妙用 作为一名Android深度用户,你是否曾因系统限制而苦恼?想要隐藏导航栏按钮来获得更沉浸的体验,或是保护隐私不被窥探,却又不想冒险Root设备&…...
【AISMM×传播效能跃迁】:从0到1搭建数据驱动型媒体策略体系(含独家权重分配算法V3.2)
更多请点击: https://intelliparadigm.com 第一章:AISMM模型与媒体传播策略 AISMM(Attention-Interest-Search-Memory-Mobilization)模型是面向智能媒体环境演化出的新型传播动力学框架,它突破了传统AIDA模型的线性局…...
OBS-VST架构解析:在开源直播软件中深度集成专业音频处理技术
OBS-VST架构解析:在开源直播软件中深度集成专业音频处理技术 【免费下载链接】obs-vst Use VST plugins in OBS 项目地址: https://gitcode.com/gh_mirrors/ob/obs-vst OBS-VST技术实现为开源直播软件OBS Studio带来了专业级的VST 2.x音频插件支持࿰…...
深蓝词库转换工具:跨平台输入法词库迁移的终极解决方案
深蓝词库转换工具:跨平台输入法词库迁移的终极解决方案 【免费下载链接】imewlconverter ”深蓝词库转换“ 一款开源免费的输入法词库转换程序 项目地址: https://gitcode.com/gh_mirrors/im/imewlconverter 你是否曾因更换操作系统而面临输入法词库丢失的困…...
Java跨平台开发:GraalVM与JNI的混合编程
GraalVM与JNI混合编程概述GraalVM是一个高性能运行时环境,支持多语言互操作(如Java、JavaScript、Python等),其原生镜像(Native Image)技术可将Java应用编译为独立可执行文件。JNI(Java Native …...
LLM动态干预技术:实时调控与合规实践
1. 项目概述 大型语言模型(LLM)正在重塑人机交互的边界,但如何让这些"黑箱"系统按照人类意图稳定输出,一直是业界痛点。去年我在参与某智能客服系统升级时,就遇到过模型突然输出不合规回复的棘手情况。动态干…...
告别手动续期!用acme.sh + Nginx搞定Let‘s Encrypt免费SSL证书(保姆级配置流程)
零门槛实现HTTPS自动化:acme.sh与Nginx的完美协作指南 第一次部署个人博客时,我盯着浏览器地址栏那个刺眼的"不安全"警告整整三天。直到发现Lets Encrypt的免费证书,才意识到原来HTTPS配置可以如此简单。但三个月后,当深…...
Windows PDF处理终极指南:零依赖Poppler预编译包快速上手
Windows PDF处理终极指南:零依赖Poppler预编译包快速上手 【免费下载链接】poppler-windows Download Poppler binaries packaged for Windows with dependencies 项目地址: https://gitcode.com/gh_mirrors/po/poppler-windows 还在为Windows上的PDF处理头疼…...
ChanlunX:通达信缠论分析插件的技术实现与应用实践
ChanlunX:通达信缠论分析插件的技术实现与应用实践 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 开发者的缠论分析困境 在量化交易与技术分析领域,缠论作为一种系统化的市场结构…...
