animalSpecificInfo.ts.md 1.6 KB

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 中定义对象键值类型的工具类型