ant design添加校验FormModel的坑

场景:二级弹层为一个table,table中的形式如下图:select下有两个选项A,B,当为A时,其他全部为必填,为B时c是disabled

在这里插入图片描述
场景已经看到了,看着很简单,select的时候类型为b的时候把c设置为disabled就可以了,但是,如果刚才选完A出发c的校验,c的校验信息出来之后,直接操作select选B,这样c置为disabled的同时,校验信息依然存在:
解决方案:

 <template slot="hammerPrintLap" slot-scope="text, record">
        <a-form-model :ref="'subFormHammerPrintLap' + index" :model="record" v-if="record.tampType !== '1'">
          <a-form-model-item
            label=""
            prop="hammerPrintLap"
            :rules="{
              required: true,
              message: '请输入',
              trigger: 'blur',
            }">
            <a-input-number
              :min="0"
              :step="0.1"
              style="width: 100%; margin: -5px 0;"
              v-model="record.hammerPrintLap"
              :disabled="isReadOnly"/>
          </a-form-model-item>
        </a-form-model>
        <a-input-number
          v-else
          :min="0"
          :step="0.1"
          style="width: 100%; margin: -5px 0;"
          v-model="record.hammerPrintLap"
          :disabled="true"/>
      </template>
可以看到我是用的两个层,根据判断条件分别展示有无校验的层,这种方式一开始并没有用,总感觉select二次出发的时候把校验给清空了,但是网上有一种解决方案
 this.form.resetFields() // 重置编辑表单,*行不通*,我是没找到重置校验的方式。

注意:校验信息是:一开始触发校验之后requried为true,如果不解决校验,直接去重置required为false, required: aa ? true : false,是没用的,他的校验就是一次走完才会走下次

 <a-form-model-item
        label=""
         prop="hammerPrintLap"
       :rules="{
           required: aa ? true : false,
           message: '请输入',
           trigger: 'blur',
         }">
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ant Design Vue 是一个非常受欢迎的 UI 组件库,它提供了丰富的表单组件,包括输入框、下拉选择框等等。要实现动态添加表单必填校验,可以按照以下步骤进行操作: 1. 首先,引入 Ant Design Vue 的 Form 组件和相应的验证规则模块,例如 `required` 必填规则。 2. 在 Vue 的 data 中定义一个表单对象,包含需要动态添加的表单控件的值。 3. 在模板中使用 Ant Design Vue 的 Form 组件,并使用 v-model 指令将表单对象和控件的值进行绑定。 4. 使用 v-for 指令遍历需要动态添加的表单控件,通过一个数组来提供控件的模板。 5. 在表单控件的模板中,使用 :rules 属性绑定验证规则,例如 `:rules="[{ required: true, message: '该字段为必填项' }]` 6. 在模板中提供一个按钮或其他交互方式,用来触发动态添加表单控件的操作。 7. 当点击按钮时,通过修改表单对象的属性或者添加新的属性,实现动态添加表单控件。 8. 提交表单时,通过调用 validate 方法对表单进行校验,这会触发相关的验证规则。 9. 根据校验结果,可以在模板中展示错误信息或者处理其他逻辑。 需要注意的是,动态添加表单必填校验时,需要在动态添加表单控件的同时,将相应的验证规则也添加到表单对象中。另外,为了方便校验和错误信息的展示,建议使用对应的验证规则模块和提示文本。 这样,通过上述步骤,就可以实现 Ant Design Vue 动态添加表单必填校验了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值