用途:这是一份字段映射安全规范,用于在重构表格列定义、枚举类型映射或数据转换逻辑时,避免因字段名推测错误而引入运行时缺陷。
触发场景:重构表格列定义(dataIndex、columns);重构枚举类型映射(typeMap、statusMap);重构数据转换逻辑(render 函数、formatter);类型定义中存在多个相似字段(如 changedAt 与 createdAt)。
核心原则:不要根据类型定义推测字段名,必须查看原始代码的实际使用。
检查清单:字段名验证需查看原始代码的 dataIndex 与后端 API 返回的实际字段名,优先使用必填字段,注意细微差异(changedAt vs createdAt、changeType vs operationType);枚举映射验证需逐个对照原始代码,确保映射完整、拼写一致、颜色与文本一致;运行时测试需通过 TypeScript 类型检查(必要但不充分),并在实际环境测试,检查是否出现 Invalid Date、undefined 或空白。
常见陷阱:类型定义有歧义时误选可选字段;枚举映射不完整;TypeScript 无法检测字段名错误;rowKey 使用可选字段导致 key 重复。
验证流程:静态检查可运行 npm run type-check 与 npm run lint;运行时测试检查 Invalid Date、undefined、空白、枚举映射与 rowKey 唯一性;对比验证可用 git show HEAD~1:src/components/InvoiceHistoryTab.tsx 查看原始代码并制作对比清单。
防御性编程:对可选字段先判空返回 '-';日期格式化用 try/catch 捕获异常;枚举映射提供默认值。
限制:资料未提供该规范的适用技术栈版本、安装方式或独立运行命令,相关细节暂未提供。