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

学习ArkTS语言

文章目录

  • ArkTS
    • 初识ArkTS语言
    • ArkTS语言介绍
    • ArkTS编程规范
    • 从TypeScript到ArkTS的适配指导
    • ArkTS高性能编程实践
    • UI范式基本语法
    • 状态管理
    • 渲染控制

在这里插入图片描述
在这里插入图片描述


ArkTS

ArkTS是HarmonyOS应用开发语言。它在保持TypeScript(简称TS)基本语法风格的基础上,对TS的动态类型特性施加更严格的约束,引入静态类型。同时,提供了声明式UI、状态管理等相应的能力,让开发者可以以更简洁、更自然的方式开发高性能应用。


初识ArkTS语言

ArkTS语言介绍

ArkTS编程规范

从TypeScript到ArkTS的适配指导

ArkTS高性能编程实践

UI范式基本语法

状态管理

渲染控制


主要功能

ArkTS是HarmonyOS主力应用开发语言。为便于熟悉Web前端的开发者快速上手,HarmonyOS在UI开发框架中,还提供了“兼容JS的类Web开发范式”。它通过模板、样式、逻辑三段式来构建相应的应用UI界面,并结合相应的运行时实现了优化的运行体验。

语言特点

基本语法

装饰器: 用于装饰类、结构、方法以及变量,并赋予其特殊的含义。如上述示例中@Entry、@Component和@State都是装饰器,@Component表示自定义组件,@Entry表示该自定义组件为入口组件,@State表示组件中的状态变量,状态变量变化会触发UI刷新。
UI描述:以声明式的方式来描述UI的结构,例如build方法中的代码块。
自定义组件:可复用的UI单元,可组合其他组件,如上述被@Component装饰的struct Hello。
系统组件:ArkUI框架中默认内置的基础和容器组件,可直接被开发者调用,比如示例中的Column、Text、Divider、Button。
属性方法:组件可以通过链式调用配置多项属性,如fontSize、width、height、backgroundColor等。
事件方法:组件可以通过链式调用设置多个事件的响应逻辑,如跟随在Button后面的onClick。

声明式UI

创建组件
配置属性
配置事件
配置子组件

状态管理

状态变量:被状态装饰器装饰的变量,改变会引起UI的渲染更新。
常规变量:没有状态的变量,通常应用于辅助计算。它的改变永远不会引起UI的刷新。
数据源/同步源:状态变量的原始来源,可以同步给不同的状态数据。通常意义为父组件传给子组件的数据。
命名参数机制:父组件通过指定参数传递给子组件的状态变量,为父子传递同步参数的主要手段。示例:CompA: ({ aProp: this.aProp })。
从父组件初始化:父组件使用命名参数机制,将指定参数传递给子组件。本地初始化的默认值在有父组件传值的情况下,会被覆盖。
初始化子节点:组件中状态变量可以传递给子组件,初始化子组件对应的状态变量。示例同上。
本地初始化:变量声明的时候赋值,作为初始化的默认值。示例:@State count: number = 0。

渲染控制

ArkUI通过自定义组件的build函数和@builder装饰器中的声明式UI描述语句构建相应的UI。在声明式描述语句中开发者除了使用系统组件外,还可以使用渲染控制语句来辅助UI的构建,这些渲染控制语句包括控制组件是否显示的条件渲染语句,基于数组数据快速生成组件的循环渲染语句以及针对大数据量场景的数据懒加载语句。


在这里插入图片描述


http://www.kler.cn/a/528320.html

相关文章:

  • 【Postman接口测试】Postman的安装和使用
  • AI-System 学习
  • 深度解析:网站快速收录与服务器性能的关系
  • Golang :用Redis构建高效灵活的应用程序
  • 如何从客观角度批判性阅读分析博客
  • Windows程序设计9:文件的读写操作
  • 开源2 + 1链动模式AI智能名片S2B2C商城小程序视角下从产品经营到会员经营的转型探究
  • react中useEffect的使用
  • 【数据结构】_C语言实现带头双向循环链表
  • 安装anaconda3 后 电脑如何单独运行python,python还需要独立安装吗?
  • BurpSuite抓包与HTTP基础
  • MySQL数据库 (三)- 函数/约束/多表查询/事务
  • pytorch实现门控循环单元 (GRU)
  • 《深入理解HTTP交互与数据监控:完整流程与优化实践》
  • FreeRTOS学习 --- 中断管理
  • 写好简历的三个关键认知
  • NVIDIA (英伟达)的 GPU 产品应用领域
  • Kafka 使用说明(kafka官方文档中文)
  • 30.Word:设计并制作新年贺卡以及标签【30】
  • 2025.1.31总结
  • Kafka SASL/PLAIN介绍
  • Python-基于PyQt5,wordcloud,pillow,numpy,os,sys等的智能词云生成器
  • Python中的数据类(dataclass):简化类的定义与数据管理
  • Unity 程序集
  • gentoo 中更改$PS1
  • 【ArcGIS_Python】使用arcpy脚本将shape数据转换为三维白膜数据