vue3+ant design的form数组表单,如何校验

这篇具有很好参考价值的文章主要介绍了vue3+ant design的form数组表单,如何校验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先,先说说我要实现的内容:如下图,点“新增”会添加一个灰框内容,form表单是一个数组,一个灰框为一个对象,各对象保存时各自校验自己表单里的内容,互不干扰!

vue3+ant design的form数组表单,如何校验

 

上页面代码(看部分代码就懂了):

 1 <div v-for="(item,index) in formList" :key="index">
 2         <a-form
 3           ref="formRef"
 4           :rules="rules"
 5           :model="formList"
 6           :label-col="{ style: { width: '130px' } }"
 7         >
 8           <a-row :gutter="[24, 24]">
 9             <a-col :span="12">
10               <a-form-item
11                 label="监控点位名称"
12                 :name="[index,'name']"
13                 v-bind="validateInfos.name"
14               >
15                 <a-input
16                   v-model:value.trim="item.name"
17                   placeholder="请输入监控点位名称"
18                   :maxLength="32"
19                   autocomplete="off"
20                 />
21               </a-form-item>
22             </a-col>
23             <a-col :span="12">
24               <a-button type="primary" @click="onSubmit(index)" class="mr">
25                 <template #icon> <SaveOutlined /> </template>保存
26               </a-button>
27             </a-col>
28             <a-col :span="12">
29               <a-form-item
30                 label="横截面积(平方米)"
31                 :name="[index,'waterDevice','area']"
32                 v-bind="validateInfos['waterDevice.area']"
33               >
34                 <a-input-number
35                   id="inputNumber"
36                   v-model:value="item.waterDevice.area"
37                   placeholder="请输入横截面积"
38                   :min="0"
39                   :max="999"
40                   style="width: 319px;"
41                 />
42               </a-form-item>
43             </a-col>
44             <a-col :span="12">
45               <a-form-item
46                 label="废水桶高度(米)"
47                 :name="[index,'waterDevice','height']"
48                 v-bind="validateInfos['waterDevice.height']"
49               >
50                 <a-input-number
51                   id="inputNumber"
52                   v-model:value="item.waterDevice.height"
53                   placeholder="请输入废水桶高度"
54                   :min="0"
55                   :max="999"
56                   style="width: 300px;"
57                 />
58               </a-form-item>
59             </a-col>
60           </a-row>
61         </a-form>
62       </div>

2023.11.1月添加补充:当定义rules,用v-bind方法绑定,校验不生效时,用下图的方式,直接在html 上写校验

vue3+ant design的form数组表单,如何校验

 2023.11.1月补充完毕!

上JS 代码(vue3):

vue3+ant design的form数组表单,如何校验

 

如果要清空校验信息,就加上  resetFields ,  业务没有用到,就不加到上面代码中了

引入
const { resetFields,validate,validateInfos } = useForm(formList, rules);

用法:
proxy.$refs.formRef[key].resetFields()

 文章来源地址https://www.toymoban.com/news/detail-710143.html

到了这里,关于vue3+ant design的form数组表单,如何校验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ant vue中表单验证(动态校验、部分校验)

    前提 :写了超级复杂的表单,其中涉及了很多表单验证的地方,现一一记录一下; ant-vue 版本1.7.8 vue 版本2.6.11 校验的原理大体相似,灵活应用!! 需求: 1根据 读写方式 去动态自动校验规则; 2.只是监听挂载路径,但因嵌套太多,表单监听的表单域不满足自动监听的条件

    2024年02月05日
    浏览(25)
  • vue3中,form表单校验之特殊字符校验、手机号、身份证号、百分制数字 & route和router的写法 & setup的两种用法 & rules中校验之blur和change

    vue3中,form表单校验之特殊字符校验、手机号、身份证号、百分制数字 route和router的写法 setup的两种用法 rules中校验之blur和change 1、写法一 index.vue 2、写法二完整版 index.vue 2、校验文件 srcutilsvalidate.ts

    2024年02月05日
    浏览(29)
  • vue3+ant design vue+ts实战【ant-design-vue组件库引入】

    🔥🔥更多内容见Ant Design Vue官方文档 🔥点击复习vue3【watch检测/监听】相关内容 👏👏👏一个好项目的编写不仅需要完美的逻辑,以及相应的技术,同时也需要一个 设计规范的高质量UI组件库 。👏👏👏本期文章将会详细讲解 Ant Design of Vue 组件库的 安装、使用、引入 。

    2024年02月02日
    浏览(38)
  • vue+element,form循环嵌套表单 、动态添加表单、嵌套表单自定义校验规则

    原文发布链接:https://juejin.cn/post/7181752966611730492 需求: 可点击新增,自动添加表单。(这个不难v-for即可) 可自定义方法校验添加的表单内容。(需要掌握element组件的规则,本人没有熟读官网,碰壁好多次才整理出来这篇文章。重要的事说3遍: 看官网看官网看官网 ) 效果

    2024年02月04日
    浏览(52)
  • (vue)el-form表单隐藏校验星号

    写法:

    2024年02月08日
    浏览(28)
  • vue实现多个el-form表单提交统一校验

    通过以下两种方法实现多个表单的统一校验: 1. 定义模板内容 在 el-form 表单中添加 ref 属性来获取表单组件对象 2. 方法一 在上述代码中,我们给每个 el-form 表单添加了 ref 属性,分别为 form1 和 form2,在 submit 方法中,分别对两个表单使用 validate 方法进行表单校验 3. 方法二

    2024年02月13日
    浏览(33)
  • Vue - Element el-form 表单对象多层嵌套校验

    针对el-form的数据源是对象嵌套对象,在进行数据绑定和校验时和单层的对象有一点区别, 具体是下面两部分: 数据源: 1、 给 el-form-item 的 prop 设为: prop=\\\"health.height\\\" 。 v-model 设为: v-model=\\\"fromData.health.height\\\" 2、校验规则 rules 对象对应的key设置为数据源内部的值: \\\'health.heig

    2024年02月14日
    浏览(37)
  • 前端-el-form表单校验,如何校验手机号和身份证号

    分成三部分处理 首先,要在模板的prop里添加校验规则 el-form-item label=\\\"身份证号:\\\" prop=\\\"identificationNumber\\\" 然后申明规则rules identificationNumber:[                 {required: true, validator: validatorIdCard, trigger: \\\'blur\\\'}                 ], phone: [                 { required: true, validator: v

    2024年04月25日
    浏览(21)
  • vue3 + Ant Design 实现双表头表格(横向表头+纵向表头)

     一、要实现的效果( 纵向固定表头的表格,横向表头数量动态化 ) 二、这是后台返回的数据格式(以企业为数组,每个企业里有个站点数组pointFactors)   三、代码实现步骤   (1)定义纵向固定表头 (2)动态生成横向表头( 从接口获取数据 )   (3)循环原始数据,生

    2024年02月04日
    浏览(33)
  • Vue3的几款UI组件库:Naive UI、Element Plus、 Ant Design Vue、Arco Design

    vue3系列的三款ui框架简要对比: 框架 Element Plus Naive ui Ant Design Vue Arco Design 简介 element-ui Vue3版本,国内使用广泛 Vue作者推荐的Vue3ui 组件库 Ant Design 的 Vue 实现,组件的风格与 Ant Design 保持同步 ArcoDesign 主要服务于字节跳动旗下中后台产品的体验设计和技术实现 社区活跃度

    2024年02月03日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包