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的抽取

相关推荐
木易士心10 分钟前
Android setContentView源码与原理分析
android
00后程序员张1 小时前
iOS混淆与IPA文件加固全流程实战 防止苹果应用被反编译的工程级方案
android·ios·小程序·https·uni-app·iphone·webview
用户41659673693552 小时前
Jetpack Compose 进阶:实现列表嵌套悬停(LazyColumn & HorizontalPager)
android
2501_915106322 小时前
iOS 应用加固与苹果软件混淆指南,如何防止 IPA 被反编译与二次打包?
android·ios·小程序·https·uni-app·iphone·webview
HMSCore3 小时前
消息推送策略:如何在营销与用户体验间找到最佳平衡点
harmonyos
HMSCore3 小时前
同一设备多账号登录,如何避免消息推送“串门”?
harmonyos
huibin1478523693 小时前
不能识别adb/usb口记录
android·adb
零點壹度ideality4 小时前
鸿蒙实现可以上下左右滑动的表格-摆脱大量ListScroller
前端·harmonyos
●VON5 小时前
重生之我在大学自学鸿蒙开发第七天-《AI语音朗读》
学习·华为·云原生·架构·harmonyos
黄林晴5 小时前
Kotlin 2.3.0-Beta1 重磅发布:这些新特性让代码更安全、更高效!
android·kotlin