例如
<a-form
:form="formId"
@submit="handleIdSubmit"
>
<a-form-item label="客户名称">
<a-input
v-decorator="['zjbh', rule.zjbh]"
autocomplete="off"
/>
</a-form-item>.
… … … … … … … … … … … …
</a-form>
在data中定义校验规则
zjbh: {
rules: [
{ required: true, message: "请输入证件号码!" },
{
validator: checkID,
},
],
initialValue: "",
},
校验规则的定义格式如下(1.x版本)
var checkID = async (rule, value, callback) => {
if (判断条件) {
return callback('不成功哦');
} else {
return callback(); //成功
}
callback();
};
如果要修改表格中部分数据
this.formId.setFieldsValue({
zjbh: 'zjbh...',
});
针对callback弃用的情况
<a-form
ref="formRef"
:model="formModel"
:rules="formRule"
>
<a-form-item label="证件编号" name="zjbh">
<a-input
autocomplete="off"
v-model:value="formModel.zjbh"
/>
</a-form-item>
</a-form>
const formRule = {
zjbh: [
{
required: true,
message: '请输入证件编号',
trigger: 'blur'
},
{
validator: (rule, value, callback) =>
checkID(rule, value, callback),
trigger: ['change', 'blur']
}
],
......
}
//校验函数:
let checkID = async (rule, value, callback) => {
if (判断条件) {
return Promise.reject('不成功哦')
} else {
return Promise.resolve()//成功
}
}