Skip to content

Dashboard Grid 仪表盘网格 ​

自动填充的仪表盘磁贴网格:能放几列就放几列,磁贴可以跨列或占满整行。KPI 磁贴通过属性配置,其他内容放进插槽。

基础用法 ​

网页近似预览,真机效果以 HarmonyOS 渲染为准。

API ​

从组件库源码中的 @Param / @Event / @BuilderParam 声明自动提取。

SDashboardGrid ​

仪表盘分区:可选标题,加上一个自动填充的磁贴网格(repeat(auto-fill, minmax(minTileWidth, 1fr)))——手机上 1 列,平板和桌面上 2 至 4 列以上,没有断点。磁贴可以通过 span 跨列(会被限制在当前列数以内),或通过 full 占满整行。

标题行的操作放在 actionsBuilder: wrapBuilder(rangePicker)(全局 @Builder)中,这样磁贴仍然使用尾随闭包。

属性类型默认值说明
titleResourceStr | undefinedundefined
descriptionResourceStr | undefinedundefined
minTileWidthnumber240磁贴的最小宽度(vp)
gapnumber16
maxColumnsnumber0列数上限(0 表示不限)
actionsBuilderWrappedBuilder<[]> | undefinedundefined标题行的尾部内容(筛选、日期范围、操作);需要设置 title。这是一个区域而不是插槽:以全局 @Builder 的 actionsBuilder: wrapBuilder(myActions) 传入(没有 this:请渲染一个组件)。

插槽: 子组件(尾随闭包)

SDashboardTile ​

仪表盘卡片。快捷属性会渲染为 KPI 磁贴(标题 + 图标、大号数值、带趋势图标的变化量);插槽可在其下方添加任意其他内容(图表、表格、列表)。

属性类型默认值说明
titleResourceStr | undefinedundefined
iconstring | undefinedundefined
valueResourceStr | undefinedundefined
deltaResourceStr | undefinedundefined
trendDashboardTrend
DashboardTrend = 'up' | 'down' | 'none'
'none'
spannumber1跨越的列数(会被限制在当前列数以内)
variantCardVariant
CardVariant = 'default' | 'outline' | 'elevated' | 'ghost' | 'filled'
'default'磁贴的卡片变体(主题的 --card-* 令牌同样适用于任何 SCard)
tokensCardTokens{}实例级卡片令牌(ADR D13),例如 { background: 'transparent', shadow: 'none' }
fullbooleanfalse占满整行

插槽: 子组件(尾随闭包)

MIT Licensed