vue3 表单校验大全,含对象嵌套对象验证、数组格式验证、动态添加验证等

前言:哈喽,大家好,我是码喽的自我修养!今天给大家分享vue3 表单校验大全,含对象嵌套对象验证、数组格式验证、动态添加验证规则、validateField 验证具体的某个某些字段等,由浅入深详细讲解!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到带大家,欢迎收藏+关注 哦 💕

🌈🌈文章目录

一、常规验证

1.关键参数 

2.示例代码

3.正则验证

4.自定义函数验证

二、特殊验证

1.对象嵌套对象验证写法

2.数据结构为数组验证写法

3.validateField 验证具体的某个某些字段

4.动态切换是否需要添加验证规则

一、常规验证

### 实现 Vue数组表单验证Vue 应用程序中处理数组形式的表单数据并对其进行验证是一个常见的需求。无论是使用 `Element UI` 还是纯 `Vue.js` 的方式,核心思路都是相似的。 #### 使用 Element UI 组件库进行数组表单验证 当采用 `Element UI` 来构建带有数组结构的数据输入界面时,可以通过定义特定规则来确保每个子项都满足相应的条件[^1]: ```html <el-form :model="dynamicValidateForm" ref="dynamicValidateForm" label-width="100px"> <el-form-item v-for="(domain, index) in dynamicValidateForm.domains" :key="index" :prop="&#39;domains.&#39; + index + &#39;.value&#39;" :rules="{ required: true, message: &#39;此项不能为空.&#39;, trigger: &#39;blur&#39; }"> <el-input v-model="domain.value"></el-input> <el-button @click.prevent="removeDomain(domain)">删除</el-button> </el-form-item> <el-form-item> <el-button type="primary" @click="submitForm(&#39;dynamicValidateForm&#39;)">提交</el-button> <el-button @click="addDomain">新增条目</el-button> <el-button @click="resetForm(&#39;dynamicValidateForm&#39;)">重置</el-button> </el-form-item> </el-form> ``` 上述代码片段展示了如何利用 `v-for` 指令遍历动态列表,并为每一个迭代出来的 `<el-form-item>` 设置唯一的属性名作为其对应的校验路径的一部分。这使得即使是在嵌套对象内也能精确指定要应用哪些验证规则。 #### 利用 Composition API 和 VeeValidate 执行更复杂的验证逻辑 如果希望获得更加灵活且强大的验证能力,则可以在基于 `Vue 3.x` 版本的应用里引入第三方插件如 `VeeValidate` 结合 `Composition API` 完成任务[^2]: ```javascript import { defineComponent, reactive } from "vue"; import { useForm, useFieldArray } from "vee-validate"; export default defineComponent({ setup() { const { handleSubmit, resetForm } = useForm(); // 初始化字段管理器 const { fields, push, remove } = useFieldArray("items"); function onSubmit(values) { console.log(JSON.stringify(values)); } return { fields, push, remove, handleSubmit: handleSubmit(onSubmit), resetForm }; } }); ``` 此方法允许开发者轻松地向现有集合添加新成员或将不再需要的部分移除出去;同时还能自定义全局或局部级别的约束条件以适应不同场景下的业务需求。
评论 69
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码喽的自我修养

您的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值