HarmonyOS NEXT——奇妙的调用方式

注解调用 一句话总结
@Extend 抽取特定组件样式、事件,可以传递参数
@Style 抽取公共样式、事件,不可以传递参数
@Builder 抽取结构、样式、事件,可以传递参数
@BuilderParams 自定义组件中传递UI组件
多个@BuilderParams 自定义组件中传递多个UI组件

@Extend

一句话总结:抽取特定组件样式、事件,可以传递参数

1、使用场景

当使用组件的时候有多个重复的属性的时候,可以抽取成Extend拓展使用

2、使用Extend后简化代码

3、Extend的抽取

通过@Extend(组件名)的方式去将重复属性进行定义

@Style

一句话总结:抽取公共样式、事件,不可以传递参数

1、使用场景

当不同组件间有同样的属性参数的时候,可以用@Style来抽取相同属性值

2、使用Style后简化代码

3、Style的抽取

  1. 通过@Style function 函数名()的方式可以定义全局的通用属性
  2. 通过@Style 函数名()的方式可以定义局部的通用属性,可使用this字段的参数
  3. 注意:@Style的局限性是无法传递形参

@Builder

一句话总结:抽取结构、样式、事件,可以传递参数

1、使用场景

当场景的所有组件代码高度重复的时候,可以考虑用@Builder方式进行构造

2、使用Builder后简化代码

3、Builder的抽取

@BuilderParams

一句话总结:自定义组件中传递UI组件

1、使用场景

在自定义的组件SonCom中需要传递UI组件的参数,使用BuilderParams传递UI组件参数

2、BuilderParams的抽取

多个@BuilderParams

一句话总结:自定义组件中传递多个UI组件

1、使用场景

在多个UI参数的情况下,可以使用参数名的方式指定每一个Builder

2、BuilderParams的抽取

相关推荐
杉氧8 小时前
深入理解 Compose 重组机制:快照系统如何驱动 UI 精准刷新?
android·架构·android jetpack
召钱熏8 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端
杉氧8 小时前
深度解析:Jetpack Compose 核心架构与底层原理 —— 十年安卓老兵的“破茧重生”
android·架构·android jetpack
通玄9 小时前
Jetpack Compose 入门系列(七):ViewModel 与界面状态管理
android
落魄Android在线炒饭9 小时前
Android Framework 开发技巧:android.jar 生成与系统快速编译验证
android
如此风景10 小时前
Kotlin Flow操作符学习
android·kotlin
plainGeekDev10 小时前
GreenDAO → Room
android·java·kotlin
weiggle11 小时前
第八篇:ViewModel + Compose——生产级状态管理实践
android
鸿蒙开发15 小时前
鸿蒙(HarmonyOS NEXT)表单校验别再手撸正则了 —— 我写了个 ArkTS 版 zod
harmonyos
TrisighT15 小时前
ArkTS 的 @BuilderParam 你八成只用了皮毛——那个尾随闭包写法差点被我当 bug 删了
harmonyos·arkts·arkui