chore(backlog): 记录 g271 完成

This commit is contained in:
HIsheR
2026-10-26 22:56:38 +08:00
parent 1680c4ef8d
commit 2c08c11645
2 changed files with 10 additions and 0 deletions
+9
View File
@@ -2825,6 +2825,15 @@
"status": "done",
"domain": "new",
"notes": "行号用 aria-hidden 而不是 role=presentation:读屏读代码时不该被「1 2 3」打断;空行渲染成一个空格撑住行高,否则连续空行会把代码块压扁。踩坑:Write 工具写文件时把行尾注释的 ***/ 后面粘了个 </n> 残片,tsc 直接报语法错——新建组件后必须先 build 再过其余门禁;demo 里的嵌套引号改用 .mjs 脚本写(Write 工具落盘不转义),比 bash 内联 heredoc 稳定"
},
{
"id": "g271",
"title": "新增手写签名板组件 signaturePad",
"motivation": "审批 / 签收类表单最缺的一件控件是「手写签名」:没有它,这类场景只能整块绕开组件库,自己接 canvas。而自己接往往踩同一串坑——高分屏线条发虚(忘了按 DPR 放位图)、移动端一按就滚页(没关 touch-action)、窗口一变签名被清空(重设位图会清画布)。这些都该由库一次解决。",
"acceptance": "新增 signaturePad(props) 并返回 handle(el / clear / toDataURL / isEmpty):指针绘制 + setPointerCapture 跟手、位图按 DPR 放大、笔色读 canvas 的 color 走令牌、容器宽度变化经 trackSize 重算并在重设位图后按快照贴回笔迹、touch-action: none 独占手势;收笔写回 value 信号与 onChange,清空写空串并复位按钮态;disabled 支持布尔与信号;样式只消费 --ua-* 令牌,禁止新增硬编码阴影 / 时长 / 字号;十处落点全同步,npm run check 全绿",
"status": "done",
"domain": "new",
"notes": "返回句柄是本库既定模式(formItem / virtualList 同款),因为「有画布就有外部要的操作」:取图、清空、判空。三处状态(位图 / signed 信号 / value 信号)必须一次改完——clear() 里少写一处就会出现「画布清空但信号还是旧图」。踩坑:Write 工具连续三次只写进文件头部(把注释当全文提交),build 直接暴露;demo 里 IIFE 少一个右括号,esbuild 报 Expected ) but found ; —— 新建组件后先 build 再谈其余门禁,能省一轮全量 check"
}
]
}