diff --git a/components/validation/demo/basic.md b/components/validation/demo/basic.md index ee7621f0de..271534b8d2 100644 --- a/components/validation/demo/basic.md +++ b/components/validation/demo/basic.md @@ -2,9 +2,11 @@ - order: 0 -表单校验。 +基本的表单校验栗子。 -为每一个 Validator 定义 rules 以及 validator,rules 对应 Validation 提供的原生校验规则(通过定义 rules 中的 message 属性可以自定义错误信息的提示,详见 [async-validator](https://github.com/yiminghe/async-validator)),而 validator 为用户提供自定义的校验规则, +每个表单域要声明 `name` 属性作为校验的标识,可通过其 `isValidating` `errors` 属性判断是否处于校验中、是否校验不通过状态,具体可参见 **用户名** 校验。 + +表单提交的时候,通过 Validation 的 validate 方法判断是否所有表单域校验通过(isValid 会作为回调函数的参数传入)。 --- diff --git a/components/validation/index.md b/components/validation/index.md index b1d89a6f9b..ee751d8787 100644 --- a/components/validation/index.md +++ b/components/validation/index.md @@ -10,12 +10,63 @@ ## 何时使用 -需要对表单域进行校验时。 +同表单结合使用,对表单域进行校验。 ## API -属性如下 +```html + + + + + + +``` + + +### Validation + +| 属性 | 类型 | 说明 | +|-----------|---------------|--------------------| +| onValidate | func | 当内部 Validator 开始校验时被调用。 | + +| 方法 | 说明 | +|------------|----------------| +| validate(callback) | 对所有表单域进行校验。 | +| reset() | 将表单域的值恢复为初始值。 | +| forceValidate(fields, callback) | 对指定的表单域进行校验,fields 对应每个 Validator 包裹的表单域的 name 属性值。| + +### Validation.Validator + +一个 Validator 对应一个表单域,校验的表单域需要声明 `name` 属性作为校验标识,如 ``。 + +| 属性 | 类型 | 默认值 | 说明 | +|-----------|---------------|--------------------| +| rules | array 或者 object | | 支持多规则校验,默认提供的规则详见 [async-validator](https://github.com/yiminghe/async-validator),同时支持用户自定义校验规则。| +| trigger | String | onChange | 设定如何触发校验动作。 | + +### rules 说明([async-validator](https://github.com/yiminghe/async-validator)) + +示例: `{type: "string", required: true, min: 5, message: "请至少填写 5 个字符。" }` + +- `type` : 声明校验的值类型(如 string email),这样就会使用默认提供的规则进行校验,更多详见 [type](https://github.com/yiminghe/async-validator#user-content-type); +- `required`: 是否必填; +- `pattern`: 声明校验正则表达式; +- `min` / `max`: 最小值、最大值声明; +- `len`: 字符长度; +- `enum`: 枚举值,对应 type 值为 `enum`,例如 `role: {type: "enum", enum: ['A', 'B', 'C']}`; +- `whitespace`: 是否允许空格, `true` 为允许; +- `fields`: 当你需要对类型为 object 或者 array 的每个值做校验时使用,详见 [fields](https://github.com/yiminghe/async-validator#deep-rules); +- `transform`: 当你需要在校验前对值做一些处理的时候; +- `message`: 自定义提示信息,[更多](https://github.com/yiminghe/async-validator#messages); +- `validator`: 自定义校验规则。 + + + + + + + -| 成员 | 说明 | 类型 | 默认值 | -|-------------|----------------|--------------------|--------------|