HarmonyOS 第一个工程:用 ArkTS 和 ArkUI 理解页面结构
从 DevEco Studio 创建工程开始,拆解 Stage 模型、ArkTS 组件和 @State 状态流。
第一个 HarmonyOS 工程要解决什么
入门阶段最重要的不是做出复杂界面,而是能说清一个页面的组件结构、数据来源和状态变化。我建议第一个工程只做一个学习任务卡片:输入任务、展示列表、标记完成。
先看目录与 Stage 模型
entry是应用主模块src/main/ets存放 ArkTS 代码module.json5描述权限、Ability 与入口配置- 资源文件放在
resources,避免把文案硬编码在页面里
一个最小状态示例
@Entry
@Component
struct TaskPage {
@State tasks: string[] = ['读完 ArkUI 状态管理']
@State input: string = ''
build() {
Column({ space: 12 }) {
TextInput({ text: this.input, placeholder: '输入一个学习任务' })
.onChange((value) => this.input = value)
Button('添加任务')
.onClick(() => {
if (this.input.trim()) {
this.tasks.push(this.input.trim())
this.input = ''
}
})
ForEach(this.tasks, (task: string) => {
Text(task).padding(12)
}, (task: string) => task)
}
.padding(20)
}
}
入门检查点
- 能解释
@State改变后为什么页面会重新渲染 - 能把一个复杂页面拆成三个以上自定义组件
- 能在模拟器和真机上分别跑一次应用
评论
Giscus 评论配置完成后自动开启。可在
.env中填写 GISCUS_* 变量。