You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ant-design-vue/components/form/demo/validate-static.vue

179 lines
4.6 KiB

7 years ago
<cn>
#### 自定义校验
我们提供了 `validateStatus` `help` `hasFeedback` 等属性你可以不需要使用 `Form.create` `getFieldDecorator`自己定义校验的时机和内容
1. `validateStatus`: 校验状态可选 'success', 'warning', 'error', 'validating'
2. `hasFeedback`用于给输入框添加反馈图标
3. `help`设置校验文案
</cn>
<us>
#### Customized Validation
We provide properties like `validateStatus` `help` `hasFeedback` to customize your own validate status and message, without using `Form.create` and `getFieldDecorator`.
1. `validateStatus`: validate status of form components which could be 'success', 'warning', 'error', 'validating'.
2. `hasFeedback`: display feed icon of input control
3. `help`: display validate message.
</us>
<template>
<a-form>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Fail"
validate-status="error"
help="Should be combination of numbers & alphabets"
7 years ago
>
<a-input id="error" placeholder="unavailable choice" />
7 years ago
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Warning"
validate-status="warning"
7 years ago
>
<a-input id="warning" placeholder="Warning" />
7 years ago
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Validating"
has-feedback
validate-status="validating"
help="The information is being validated..."
7 years ago
>
<a-input id="validating" placeholder="I'm the content is being validated" />
7 years ago
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Success"
has-feedback
validate-status="success"
7 years ago
>
<a-input id="success" placeholder="I'm the content" />
7 years ago
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Warning"
has-feedback
validate-status="warning"
7 years ago
>
<a-input id="warning2" placeholder="Warning" />
7 years ago
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Fail"
has-feedback
validate-status="error"
help="Should be combination of numbers & alphabets"
7 years ago
>
<a-input id="error2" placeholder="unavailable choice" />
7 years ago
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Success"
has-feedback
validate-status="success"
7 years ago
>
<a-date-picker style="width: 100%" />
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Warning"
has-feedback
validate-status="warning"
7 years ago
>
<a-time-picker style="width: 100%" />
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Error"
has-feedback
validate-status="error"
7 years ago
>
<a-select default-value="1">
<a-select-option value="1">
Option 1
</a-select-option>
<a-select-option value="2">
Option 2
</a-select-option>
<a-select-option value="3">
Option 3
</a-select-option>
7 years ago
</a-select>
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Validating"
has-feedback
validate-status="validating"
help="The information is being validated..."
7 years ago
>
<a-cascader :default-value="['1']" :options="[]" />
7 years ago
</a-form-item>
<a-form-item
label="inline"
:label-col="labelCol"
:wrapper-col="wrapperCol"
style="margin-bottom:0;"
7 years ago
>
<a-form-item
validate-status="error"
help="Please select the correct date"
:style="{ display: 'inline-block', width: 'calc(50% - 12px)' }"
>
<a-date-picker style="width: 100%" />
</a-form-item>
<span :style="{ display: 'inline-block', width: '24px', textAlign: 'center' }">
-
</span>
<a-form-item :style="{ display: 'inline-block', width: 'calc(50% - 12px)' }">
<a-date-picker style="width: 100%" />
</a-form-item>
7 years ago
</a-form-item>
<a-form-item
:label-col="labelCol"
:wrapper-col="wrapperCol"
label="Success"
has-feedback
validate-status="success"
7 years ago
>
<a-input-number style="width: 100%" />
</a-form-item>
</a-form>
</template>
<script>
export default {
data() {
7 years ago
return {
labelCol: {
xs: { span: 24 },
sm: { span: 5 },
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 12 },
},
};
7 years ago
},
};
7 years ago
</script>