积分中心
ArkUI 自定义组件设计:用明确的输入和插槽降低复用成本
头像 ccai 2026-09-24 16:32:53    发布
0 浏览 0 点赞 0 收藏

自定义组件最容易出现的问题是参数越来越多,最后变成一个难以维护的“大组件”。

可以把组件分成数据、事件和内容插槽:

@Component
struct InfoCard {
  @Prop title: string
  @Prop enabled: boolean
  @BuilderParam content: () => void
  private onClick?: () => void

  build() {
    Column() {
      Text(this.title)
      this.content()
    }
    .opacity(this.enabled ? 1 : 0.5)
  }
}

组件不应直接访问页面仓储、路由或全局状态。它只接收数据并抛出事件,页面负责决定业务动作。

封装完成后,至少验证空内容、长标题、禁用态、深色模式、字体放大和多次复用。组件 API 越小,后续升级越容易。


©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
IDE
地址:北京市朝阳区北三环东路三元桥曙光西里甲1号第三置业A座1508室 电话:13391790444或(010)62178877
版权所有:电脑商情信息服务集团 北京赢邦策略咨询有限责任公司
声明:本媒体部分图片、文章来源于网络,版权归原作者所有,我司致力于保护作者版权,如有侵权,请与我司联系删除

京ICP备:2022009079号-2

京公网安备:11010502051901号

ICP证:京B2-20230255