useTableRowStatus
@astryxdesign/core v0.7.1 · useTableRowStatus
配置对象是 MaybeRefOrGetter:传一个 getter 或 ref,插件才会跟着最新值走。
参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
getStatus | (item: T) => TableRowStatus | null | — | 返回语义状态或自定义标记。{status, label} 只认 success、error、warning 三个值,图标和色调从当前主题取。{color, icon?, label} 是自定义标记这条路:颜色只负责上色,不给图标就画 8px 圆点,给了图标就画你指定的那个。颜色名就算叫 success、error、warning,不给图标也还是圆点。可用的图标名:close、chevronDown、chevronLeft、chevronRight、chevronsLeft、chevronsRight、check、success、error、warning、info、calendar、clock、externalLink、menu、moreHorizontal、search、upload、arrowUp、arrowDown、arrowsUpDown、funnel、eyeSlash、viewColumns、copy、checkDouble、wrench、stop、microphone、image。两种写法互斥,label 必填并通过 role="img" 读出来,返回 null 则这一格是空的。 |
| 字段 | 类型 | 说明 |
|---|---|---|
status | 'success' | 'warning' | 'error' | 语义结果。图标和色调都来自主题,和 color 互斥。 |
color | 'accent' | 'success' | 'error' | 'warning' | 'red' | 'orange' | 'green' | 'yellow' | 'blue' | 'gray' | (string & {}) | 标记的颜色。没有 icon 时给 8px 圆点上色;直接给 CSS 颜色就按原样用。 |
icon | string | 上面列出的图标名;带 : 的字符串按 Iconify id 处理。颜色名会沿用 Icon 的颜色映射,原始 CSS 颜色则精确按你给的上色。 |
label | string | 标记的无障碍名称,同时作为悬浮提示显示。 |
返回值
| 字段 | 类型 | 说明 |
|---|---|---|
transformColumns | (columns: TableColumn<T>[]) => TableColumn<T>[] | 在最前面加状态列。列键是 __rowStatus,宽 pixel(28),不能拖宽。列表头视觉上为空,但带有来自内置文案的本地化名称。 |