枚举功能文档
版本: v1.1.0
最后更新: 2025-12-31
📖 概述
枚举(Enum)功能允许你定义字段只能取特定的值集合。schema-dsl 支持多种枚举类型和语法格式。
✨ 核心特性
- ✅ 字符串枚举 - 限定字符串值范围
- ✅ 布尔值枚举 - true/false 布尔值
- ✅ 数字枚举 - 数字值限定
- ✅ 整数枚举 - 整数值限定(禁止小数)
- ✅ 小数枚举 - 支持小数值
- ✅ 自动类型识别 - 智能识别枚举类型
- ✅ 多种语法 - 简写和完整形式
- ✅ 必填支持 - 枚举字段可标记为必填
- ✅ 链式 API - 支持 .label() 和 .messages()
📝 语法格式
基础语法
支持的枚举类型
🚀 快速开始
1. 字符串枚举
2. 布尔值枚举
3. 数字枚举
📚 详细用法
必填枚举
显式指定类型
链式 API
数组中的枚举
嵌套对象中的枚举
🎯 实际应用场景
用户管理系统
订单管理
内容管理
⚙️ 高级特性
默认值
自定义错误消息
统一使用 'enum' 键(推荐)✅
所有枚举类型统一使用 'enum' 定义错误消息,最简单直接:
说明:
- ✅ 所有枚举类型统一使用
'enum'键 - ✅ 简单易懂,不需要记忆不同类型的键名
- ✅ 自动推断类型,用户只关心错误提示内容
高级用法:按类型定制消息(可选)
如果需要为不同类型的枚举定制不同的错误消息,可以使用 type.enum 格式:
优先级: type.enum > enum > 全局默认
建议: 99% 的场景直接使用 'enum' 就够了 ✅
多语言支持
🔍 类型识别规则
自动识别逻辑
显式指定类型
❌ 错误处理
无效的枚举值
类型不匹配
枚举会自动进行类型验证:
说明:
- 类型错误由 schema 自动验证(如传入字符串给数字枚举)
- 枚举范围错误统一使用
'enum'错误消息
📊 性能
枚举验证性能优异:
🔄 兼容性
与旧版本兼容
不影响其他类型
📖 相关文档
对应示例文件
示例入口: enum.ts
说明: 覆盖字符串、数字、布尔值和数组元素枚举的成功/失败路径,并展示自定义枚举错误消息。
🆕 更新日志
v1.1.0 (2025-12-31)
- ✨ 新增枚举功能
- ✨ 支持字符串、布尔值、数字、整数枚举
- ✨ 支持
enum:前缀语法 - ✨ 支持
enum:type:values格式 - ✨ 自动类型识别
- ✨ 支持枚举必填标记
文档生成时间: 2026-05-08
版本: v1.1.0