使用Antd进行表单校验,代码如下:
<template> <a-form :model="formState" :label-col="labelCol" :wrapper-col="wrapperCol" ref="newFormRef" autocomplete="off" > <a-form-item label="模板名" name="name" has-feedback :rules="[{ required: true, message: '请输入模板名' }]" > <a-input v-model:value="formState.name" /> </a-form-item> <a-form-item :wrapper-col="{ span: 14, offset: 10 }"> <a-button type="primary" html-type="submit" @click="onSubmit">确认</a-button> </a-form-item> </a-form> </template>
即设置表单的ref值,在form-item中设置校验规则,注意要设置form-item的name值。
然后在提交表单时根据ref值对表单进行校验,代码如下:
methods: { onSubmit(){ this.$refs.newFormRef.validate().then(() => { console.log("submit!", this.formState, toRaw(this.formState)); this.$emit("afterSavingToTemplate"); }); } }
即可。