. ArkTS 语言基础
ArkTS 是基于 TypeScript 的扩展语言,专为 HarmonyOS 应用开发设计。以下是项目中使用的主要 ArkTS 特性:
1.1 类型系统
-
强类型:ArkTS 支持显式类型定义,避免使用
any
或unknown
。typescript
复制
class TodoItem { id: number; title: string; completed: boolean; }
-
接口:用于定义数据结构。
typescript
复制
interface TodoItemData { id: number; title: string; completed: boolean; }
1.2 装饰器
-
@Entry
:标记应用的入口组件。 -
@Component
:定义一个自定义组件。 -
@State
:声明组件的状态变量,状态变化时会触发 UI 更新。typescript
复制
@State todos: TodoItem[] = [];
1.3 组件开发
-
组件结构:使用
struct
定义组件,build
方法用于描述 UI。typescript
复制
@Component struct TodoList { build() { Column() { // UI 内容 } } }
2. HarmonyOS 组件
HarmonyOS 提供了丰富的 UI 组件,以下是项目中用到的主要组件:
2.1 布局组件
-
Column
:垂直布局容器。 -
Row
:水平布局容器。 -
List
:列表容器,用于显示多个列表项。typescript
复制
List({ space: 10 }) { ForEach(this.todos, (item: TodoItem) => { ListItem() { // 列表项内容 } }); }
2.2 基础组件
-
Text
:显示文本内容。 -
TextInput
:输入框组件。 -
Button
:按钮组件。 -
Checkbox
:复选框组件。typescript
复制
Checkbox() .select(item.completed) .onChange((selected: boolean) => { this.toggleTodoCompletion(item.id); });