iter(g276): 新增迷你趋势线组件

This commit is contained in:
HIsheR
2026-10-26 23:02:15 +08:00
parent 573d3aa8a9
commit eac7d4b337
12 changed files with 215 additions and 10 deletions
+47 -1
View File
@@ -97,7 +97,8 @@
"codeBlock(props):代码块,等宽多行 + 行号列 + 标题行 + 一键复制原文,只展示不高亮",
"signaturePad(props):手写签名板,指针绘制 + DPR 位图,返回 handle(el / clear / toDataURL / isEmpty)",
"loading(props, ...children):区域加载遮罩,内容原地降透明度 + 转圈文案,带延迟出场避免快请求闪烁",
"relativeTime(props):把时间戳渲染成「3 分钟前」并自动刷新,超阈值改显示绝对日期,title 恒给精确值"
"relativeTime(props):把时间戳渲染成「3 分钟前」并自动刷新,超阈值改显示绝对日期,title 恒给精确值",
"sparkline(props):迷你趋势线,把数值序列压成折线(可填充 + 末点标记),无坐标轴无交互"
],
"keyTypes": [
"ButtonProps",
@@ -4300,6 +4301,51 @@
"精确时间放在 title:鼠标悬停可看,不必为「想知道具体哪天」再点开详情",
"时间非法(空串 / 格式错)不猜也不抛,显示 fallback(缺省「—」),列表不会因一条脏数据空白"
]
},
{
"id": "sparkline",
"title": "迷你趋势线 Sparkline",
"demo": "sec-spark",
"props": [
{
"n": "values",
"t": "number[]",
"d": "数值序列(按时间顺序);非有限数会被剔除"
},
{
"n": "width",
"t": "number",
"d": "宽度(px);缺省 120"
},
{
"n": "height",
"t": "number",
"d": "高度(px);缺省 32"
},
{
"n": "area",
"t": "boolean",
"d": "是否填充折线下方面积;缺省 true"
},
{
"n": "marker",
"t": "boolean",
"d": "是否标记末点;缺省 true(一眼看出当前值位置)"
},
{
"n": "ariaLabel",
"t": "string",
"d": "可访问名;缺省「趋势图」"
}
],
"example": "sparkline({ values: last7Days, width: 140, height: 36 })",
"steps": [
"把按时间顺序的数值数组交给 values:不用自己算最大最小与像素坐标,组件按 viewBox 等比缩放",
"和 statistic 并排用:主数值走 statistic、走向走 sparkline,趋势线不画坐标轴也不带交互",
"不要面积就传 area: false,不要末点圆点传 marker: false(极窄的表格单元格里圆点会糊成一团)",
"改颜色在父级设 color:线、面积、圆点都读 currentColor,放进 card 或表格行自动跟随文字色",
"少于两个点时画不出趋势,组件返回空图——请在外面判空并给「暂无数据」,别让它空着占位"
]
}
]
}