iter(g331): 新增配方 22 表格行内编辑

This commit is contained in:
HIsheR
2026-10-27 02:03:47 +08:00
parent 52c301523e
commit 05720aacbe
4 changed files with 88 additions and 0 deletions
+9
View File
@@ -3365,6 +3365,15 @@
"motivation": "dataTable 的单元格只有 format 一条路(纯文本),状态列只能是「已通过」四个字而不是 tag,头像列只能是 URL,editable 刚做出来却放不进表格——写实业务里表格是主战场,这一格塞不进组件,整套组件库在详情页能用、在列表页就退化成纯文本。",
"acceptance": "① TableColumn 增可选 render: (row) => unknown:传了即取代 format 决定这一格画什么,排序 / 筛选 / 导出仍按原值走;② 自定义单元格拦下点击冒泡,点格里的按钮不会顺带触发 onRowClick(整行可点时尤其重要);③ 不传 render 的列行为零变化(format 走 textContent,天然免注入);④ manifest 的列定义与步骤同步说明,demo 城市列改成标签渲染并在段落里点明格内点击不触发整行;⑤ npm run check 全绿。",
"notes": ""
},
{
"id": "g331",
"domain": "tooling",
"status": "open",
"title": "配方 22:表格里就地改数据(editable + dataTable)",
"motivation": "editable 与列的 render 都刚落地,但 Agent 拿到两个组件未必拼得对:把草稿信号当数据源(Esc 取消后表格显示未保存的值)、提交后整表换源冲掉别的格草稿、用 format 塞 DOM、在格内点击里又触发整行回调——这四条都是拼装顺序问题,不是组件问题,正好该由配方承接。",
"acceptance": "① recipes.md 新增配方 22(编号连续、含最小骨架与要点),骨架用 dataTable({ data: rows }) + 列 render 包 editable,草稿信号与数据源分离;② 要点覆盖「唯一数据源 / render 只决定画什么 / 整表换源的副作用 / 校验口径与 form 一致 / 格内点击被拦 / 纯文本列仍用 format」六条;③ ua recipes 22 能取出骨架与组件清单,MCP get_recipe 同源可见;④ npm run check 全绿。",
"notes": ""
}
]
}