# Ardot 设计稿 API 的坑(batch_edit) **日期**:2026-07(从误入库的工具记忆里抢救归位) **场景**:用 Ardot 的 `batch_edit` 批量修改设计稿节点属性(充电柜 H5 应用设计稿, 文件 ID `701384244279693`)。 ## 问题描述 批量改完 7 屏后,用户反馈"位置都是乱的",截图验证发现**所有 7 屏几乎全白/空白**: 容器节点没有任何背景色,只有 text 节点有 fills,所以只剩零星文字可见。 ## 根因分析 上一轮重建时**所有 frame/容器节点的 `fills` 都写成了空数组 `[]`**。 更关键的是:**给"已存在的节点"更新颜色时,十六进制简写 `fill:"#FFF"` 不生效** —— 它只在 **Insert 新节点**时可用;Update 已有节点必须写完整对象。 ## 解决方案 | 属性 | 正确写法 | 错误写法 | |------|---------|---------| | `fills` | `[{type:"SOLID", color:{r,g,b}}]`(RGB 对象数组) | `fill:"#FFF"`(Update 时无效) | | `strokes` | `[{type:"SOLID", color:{r,g,b}, width:N}]` | 写成对象形式 | | `cornerRadius` | 数字 | 数组 | ## 模式 / 反模式 - **模式**:批量改设计稿后,**用截图/渲染验证**,不要只看接口返回成功 —— "操作成功但属性没生效"正是本次的表现(与后端"打印 ❌ 却 exit 0"是同一类信号缺失)。 - **反模式**:把"同一属性在不同操作(Insert/Update)下语义不同"当理所当然; 涉及此类差异时**先小范围试一个节点并肉眼确认**,再全量批处理。