Skip to content

校验规则

注意

推荐使用 FormCreate 内置的全新验证引擎进行表单验证,表单校验(新版)

Form props

在表单中如何使用验证规则

验证规则说明

参数名描述类型默认值
type校验的值的类型,默认为 'string'`'string''number'
required是否必填booleanfalse
message校验失败时展示的信息string-
length校验长度(string, array)number-
maxLength最大长度(string)number-
minLength最小长度(string)number-
match匹配校验(string)RegExp-
uppercase大写(string)booleanfalse
lowercase小写(string)booleanfalse
min最小值(number)number-
max最大值(number)number-
equal校验数值(number)number-
positive正数(number)booleanfalse
negative负数(number)booleanfalse
true是否为 true(boolean)booleanfalse
false是否为 false(boolean)booleanfalse
includes数组中是否包含给定值(array)any[]-
deepEqual数组元素是否相等(array)any-
empty是否为空(object)booleanfalse
hasKeys对象是否包含给定属性(object)string[]-
validator自定义校验规则( value: FieldValue | undefined, callback: (error?: string) => void ) => void-

注意

  • Arco Design 使用 match 而不是 pattern 进行正则表达式校验
  • Arco Design 使用 minLengthmaxLength 而不是 minmax 进行字符串长度校验
  • 自定义验证中无论成功或失败,都必须执行 callback 回调函数
  • 自定义验证中可通过 this.rulethis.api 获取组件和表单的相关信息

常见校验示例

1. 必填字段校验

不能只输入空格(自定义)

Arco 的校验对象无 async-validator 的 whitespace 字段时,可用 validator 判断去掉空白后是否为空:

2. 长度校验

最小长度校验

最大长度校验

固定长度校验

3. 正则表达式校验

邮箱校验

网址校验

4. 数字范围校验

正数校验

5. 自定义校验

自定义校验(访问其他字段)

6. 枚举值校验

7. 数组/多选校验

最小选中项校验

最大选中项校验

8. 日期校验

日期必填校验

9. 组合校验

10. 条件校验

FormCreate 是一个开源项目,基于 MIT 许可证发布,欢迎个人和企业用户免费使用