# animalSpecificInfo.ts ## 文件职责 定义**动物患者专用字段配置**,为表单验证提供动物特有字段的**忽略规则映射**。 ## 实现方式 通过**常量数组**和**映射对象**实现动物专用字段的配置管理。将字段名称转换为键值映射,用于表单验证逻辑中的字段过滤。 ## 实现思路 1. **字段定义**:使用 const 断言定义动物专用字段列表(owner_name、variety) 2. **映射转换**:通过 Object.fromEntries 和 map 将字段数组转换为布尔映射对象 3. **类型推断**:利用 TypeScript 类型推断确保映射对象的类型安全 4. **导出配置**:导出 omitAnimalSchemaMap 供表单验证模块使用 ## 边界 ### 输入边界 - ✅ 预定义的动物专用字段名称 - ❌ 不接受运行时动态字段定义 ### 输出边界 - ✅ 导出动物字段忽略映射对象 - ❌ 不提供字段验证逻辑 - ❌ 不包含人类患者字段配置 ### 职责边界 - ✅ 负责定义动物患者特有字段 - ✅ 负责提供字段忽略规则映射 - ❌ 不负责实际的表单验证逻辑 - ❌ 不负责字段值的处理 - ❌ 不负责患者类型判断 ## 涉及概念 **动物专用字段**:动物患者特有的信息字段,如主人姓名(owner_name)和品种(variety) **字段忽略映射**:用于表单验证时排除特定字段的配置对象 **const 断言**:TypeScript 的 as const 语法,确保数组元素类型为字面量类型 **Object.fromEntries**:将键值对数组转换为对象的 JavaScript 方法 **Record 类型**:TypeScript 中定义对象键值类型的工具类型