面向 HarmonyOS 5(NEXT)开发者,从基础概念到项目实战,全面解析组件与模板服务,帮助开发者快速构建高质量应用。


一、HarmonyOS 5 新特性概览

1.1 什么是 HarmonyOS NEXT

  • 去除 AOSP
  • 原生鸿蒙
  • ArkTS
  • ArkUI
  • DevEco Studio

1.2 HarmonyOS 5 带来的变化

  • ArkUI 全面升级
  • Stage Model
  • 元服务
  • AI 能力增强
  • 模板服务

二、什么是组件(Component)

2.1 ArkUI 组件体系

包括:

  • Text
  • Button
  • Image
  • Row
  • Column
  • Stack
  • Grid
  • List
  • Scroll
  • Navigation

介绍:

  • 基础组件
  • 容器组件
  • 布局组件
  • 自定义组件

2.2 UI组件分类

例如:

基础组件


Text
Image
Button
TextInput
Checkbox
Toggle
Slider

布局组件


Row
Column
Flex
Grid
RelativeContainer

容器组件


List
Tabs
Navigation
Swiper
WaterFlow
Scroll

反馈组件


Dialog
Toast
LoadingProgress
Progress

三、自定义组件开发

@Component

例如:


@Component
struct UserCard {

  build() {
    Column() {
      Text("HarmonyOS")
    }
  }
}

介绍:

  • 生命周期
  • build()
  • 页面组合
  • 可复用

@Builder

Builder 的作用:


封装UI
重复利用
减少代码

例如


@Builder
function Item(title:string){

}

使用场景

  • 列表
  • 卡片
  • Banner

@Styles

统一样式

例如


@Styles
function titleStyle(){

}

优势:

  • 提高维护性
  • 避免重复代码

四、组件通信

包括

@State

页面状态


@State
count:number=0

@Prop

父传子


Parent
↓

Child

@Link

双向绑定


Parent

⇅

Child

@Provide

共享数据


@Consume

消费数据

类似 Vue 的


Provide / Inject

@Observed

对象监听


@ObjectLink

对象共享


@StorageLink

应用级共享


AppStorage

全局数据

例如


AppStorage.SetOrCreate()

五、布局系统详解

包括:

Row

横向布局

Column

纵向布局

Flex

弹性布局

Grid

网格布局

RelativeContainer

约束布局

Stack

层叠布局

分别介绍:

  • 使用方式
  • 属性
  • 对齐
  • 常见问题

六、模板服务(Template Service)

这是 HarmonyOS 5 比较新的能力。

主要介绍:

什么是模板服务

模板服务允许开发者:

  • 快速生成页面
  • 统一设计规范
  • 降低开发成本
  • 提高一致性

适用于:

  • 企业后台
  • 电商
  • 新闻
  • 社区
  • 工具应用

模板组成

通常包括


UI模板

↓

组件模板

↓

业务模板

↓

页面模板

模板创建流程


创建模板

↓

注册模板

↓

参数配置

↓

引用模板

↓

动态渲染

模板参数

例如:


{
 title,
 image,
 description,
 button
}

实现:


一套模板

↓

不同数据

↓

生成不同页面

七、模板服务最佳实践

例如:

商品卡片


图片

标题

价格

销量

按钮

全部由模板生成。


例如:

资讯列表


封面

标题

作者

发布时间

无需重复开发。


例如:

个人中心


头像

昵称

会员等级

菜单

统一模板。


八、模板服务优势

开发效率提升

重复页面减少80%以上。


UI一致

所有页面保持统一风格。


易维护

修改模板即可影响所有页面。


降低Bug

避免重复代码。


九、项目实战

案例:

电商首页

模板:


Banner

↓

分类

↓

商品卡片

↓

猜你喜欢

案例:

新闻APP

模板:


Banner

↓

新闻列表

↓

评论

↓

推荐

案例:

企业后台

模板:


统计卡片

↓

图表

↓

列表

↓

分页

十、模板与组件结合开发

推荐架构:


Page

↓

Template

↓

Component

↓

Builder

↓

Style

实现:


数据

↓

模板

↓

组件

↓

UI

十一、性能优化

包括:

  • LazyForEach
  • 虚拟列表
  • 图片懒加载
  • 状态最小更新
  • Builder复用
  • 避免重复build()
  • 合理使用 @State
  • 合理使用 @Link
  • 使用缓存

十二、开发规范

建议:

  • 一个组件只负责一个功能
  • 页面不要超过300行
  • Builder不要过多嵌套
  • State尽量局部化
  • 模板统一管理
  • 样式统一抽离
  • 组件命名规范

十三、总结

HarmonyOS 5 的组件体系与模板服务共同构成了现代化 UI 开发的重要基础。组件提供了高度可复用的页面构建能力,而模板服务进一步将页面结构、样式和业务逻辑标准化,大幅减少重复开发工作。在企业级项目中,合理结合 ArkUI 组件、自定义组件、Builder、状态管理以及模板服务,不仅能够提升开发效率,还能增强代码的可维护性和团队协作能力。

对于中大型应用,建议采用 "页面(Page)→ 模板(Template)→ 组件(Component)→ Builder → 样式(Style)" 的分层设计模式,配合统一的数据驱动和状态管理机制,能够更好地发挥 HarmonyOS 5 的开发优势,构建高性能、易扩展、体验一致的原生鸿蒙应用。

Logo

作为“人工智能6S店”的官方数字引擎,为AI开发者与企业提供一个覆盖软硬件全栈、一站式门户。

更多推荐