常用数据类型
Yup 提供了多种内置数据类型的 Schema,能够满足大多数应用场景。
每种类型都支持链式方法来自定义验证规则。
字符串(string)
js
const schema = yup.string().required().min(3).max(10).email();required():必填min(length):最小长度max(length):最大长度email():必须是合法邮箱
数字(number)
js
const schema = yup.number().required().positive().integer();positive():必须为正数integer():必须为整数min(value)/max(value):最小值和最大值
布尔值(boolean)
js
const schema = yup.boolean().oneOf([true], "必须勾选同意");oneOf([true]):通常用于同意协议、勾选框验证
日期(date)
js
const schema = yup.date().min(new Date(2020, 0, 1)).max(new Date(2030, 11, 31));min(date):不得早于指定日期max(date):不得晚于指定日期
混合类型(mixed)
js
const schema = yup.mixed().required();- 可用于任何数据类型
- 常配合
oneOf()、notOneOf()使用
小结
- 字符串:验证文本、邮箱、长度
- 数字:验证范围、正负、是否整数
- 布尔:常用于开关、勾选框
- 日期:限制时间范围
- 混合:适配特殊场景
接下来,我们将深入学习 Yup 的 验证规则。