Ant Design Vue表单校验报错

ant design/react 利用setTimeout解决表单还未加载,动态校验的问题 ant design/react 利用setTimeout解决表单还未加载,动态校验的问题 在写项目中出现一个问题,在表单中用一个A控件控制另一个B控件显示隐藏,当A控件切换的时候,同时校验B控件,这时候会出现B控件内就算有初始值也会检验报错, 因为当校验代码执行的时候,B控件还没有加载出来,因为两个操作都在同一个eventloop里. handleVisible() { this.set... 阅读详情

 1、使用ant-form组件的表单校验,表单有值还是校验不通过

<template>
  <div class="product-box">
    <div class="product-container">
      <div class="header">
        <div class="c_title">
          <div class="line"></div>
          <span>产品封面图播放参数设置</span>
        </div>
      </div>
      <div class="form-container">
        <a-form
          ref="formRef"
          :model="formState"
          :rules="rules"
          :label-col="{ span: 5 }"
          :wrapper-col="{ span: 6 }"
        >
          <a-form-item label="轮播展示间隔时长(秒):" name="carouselTime">
            <a-input v-model:value="formState.carouselTime" placeholder="请输入" />
          </a-form-item>
          <a-form-item label="轮播样式顺序:" name="carouselSort">
            <a-select v-model:value="formState.carouselSort" placeholder="请选择">
              <a-select-option :value="1">图片优先</a-select-option>
              <a-select-option :value="2">视频优先</a-select-option>
            </a-select>
          </a-form-item>
        </a-form>
      </div>
      <div class="footer">
        <div class="foot_btn">
          <Space :size="28">
            <a-button type="primary" @click="handleUpdate">更新</a-button>
          </Space>
        </div>
      </div>
    </div>
  </div>
</template>
<script setup lang="ts">
  import { ref, onMounted } from 'vue';
  import {
    Form as AForm,
    FormItem as AFormItem,
    Select as ASelect,
    SelectOption as ASelectOption,
    Input as AInput,
    message,
    Space,
  } from 'ant-design-vue';
  import {
    getProductCarouselParam,
    saveProductCarouselParam,
  } from '/@/api/jm-worker-hospital/business/productCarouselParam/productCarouselParam';
  const formRef = ref();
  const formState = ref({ carouselId: 0, carouselSort: 1, carouselTime: 2 });
  const rules = {
    carouselTime: [
      {
        required: true,
        message: '请输入轮播间隔时长',
        trigger: ['change'],
      },
    ],
    carouselSort: [
      {
        required: true,
        message: '请选择轮播样式顺序',
        trigger: ['change'],
      },
    ],
  };
  const getData = async () => {
    const res = await getProductCarouselParam();
    console.log(res.data, 'res.data');

    Object.assign(formState.value, res.data);
    console.log(formState.value, 'formState.value');
  };
  const handleUpdate = () => {
    console.log(formState.value, 'formState.value');
    formRef.value
      .validate()
      .then(() => {
        saveProductCarouselParam(formState.value).then((res) => {
          if (res.code === 200) {
            message.success('操作成功');
            getData();
          } else {
            message.error(res.message);
          }
        });
      })
      .catch((error) => {
        console.log(error, 'error');
      });
  };
  onMounted(() => {
    getData();
  });
</script>

是因为rules如果不设置type的话,type默认值为string,我这里form内的数据都是number格式所以校验不通过,rules加一个type为number就可以了

  const rules = {
    carouselTime: [
      {
        required: true,
        type: 'number',
        message: '请输入轮播间隔时长',
        trigger: ['change'],
      },
    ],
    carouselSort: [
      {
        required: true,
        type: 'number',
        message: '请选择轮播样式顺序',
        trigger: ['change'],
      },
    ],
  };

vue2/3 - ant design vue报错You cannot set a form field before rendering a field associated with the va antd,ant design vue,antd vue,vue2,vue3,vue报错,vue+antd报错,setFieldsValue,You cannot set a form field before rendering a field associated with the value.,解决antd vue中使用setFieldsValue报错“You cannot set a form field before rendering a field associated with ”表单set 阅读详情

相关推荐

IFIX5.8在Win10系统下的安装避坑指南

本文提供了IFIX5.8在Windows 10系统下的详细安装教程与避坑指南。针对常见的驱动缺失、UAC拦截及兼容性报错等问题,文章从安装前准备、分步安装流程到安装后配置与驱动修复,给出了系统性的解决方案,帮助工控从业者顺利完成部署。

f6g7h8i9j的博客 364

vue使用ant组件的时候表单rules验证总是不通过

之前我把string改成number number改成string 去掉之后完美解决问题。绑定了form.customerId之后选择了 还提醒我选择客户名称。解决一 name和v-model里的名字设置成为一致。解决二 去掉rules的类型验证。

weixin_41621686的博客 949

什么是Merkle树?用“文件柜”类比理解区块链的核心技术

Merkle树是一种用于区块链的数据结构,像一个高效的“文件柜”,用于存储和验证大量交易数据。比特币通过Merkle树将交易哈希组织成树状结构,层层汇总,最终生成一个唯一的根哈希,存储在区块头中。这种设计大幅减少数据存储和验证成本,支持快速校验交易的完整性和存在性。Merkle树通过密码学保证数据不可篡改,广泛应用于比特币、区块链及其他分布式系统。它的优势在于高效、轻量和安全,尤其适合轻节点验证和数据同步。理解Merkle树就像掌握区块链的“索引秘籍”,是Web3世界的关键技术。

在路上的专栏 1192

vue3+ Ant Design Vue实现动态表单+动态校验规则+动态验证

vue3+ Ant Design Vue实现动态表单+动态校验规则+动态验证 快速使用

mrorry的博客 4601

利用CANoe和CAPL实现高效CAN网关设计与仿真

本文详细介绍了如何利用CANoe和CAPL进行高效CAN网关的设计与仿真。通过搭建仿真工程、导入DBC数据库、编写CAPL脚本等步骤,手把手指导读者构建一个连接不同CAN网络的网关模型,实现报文的监听、转发与信号处理,从而在硬件开发前验证逻辑,提升汽车电子开发效率与可靠性。

weixin_29164091的博客 294

new delete 详解

常规的new 和 delete 当需要内存时,可以使用new申请内存,但在用完内存时应当使用delete 去归还内存,以防止内存泄漏,具体使用方案见下面代码: int* ps = new int ; // 使用new 申明变量空间 ... ... delete ps ; '// delete 删除所申明的变量空间 上述代码将删除ps 指针指向的内存空间,但不会删除指针本身,即仍然可以使用该指针去指向其他int 类型的变量。new 和 delete 一定需要成对的使用否则极易发生内存泄漏。 注意:不

qq_42138448的博客 6938

vue+antd表单已输入内容但校验一直不消失问题总结

值得注意的是,如果你的表单是在弹框里,在弹框打开的方法中是否对form进行了重新赋值,如果用等于号赋值可能会导致form缺少字段,正确做法是用对象合并的方法。使用antd表单校验规则经常出现已经填写内容了但校验提示一直存在的情况,以下是我遇到并问题总结的解决方法,希望能帮到你们。5、在表单校验规则中,输入框、文本框的触发方式最好使用blur,日期选择器、普通选择器使用change。4、确认form绑定的model是否已初始化各个字段(最常见但容易忽略的情况)3、确认form绑定的model。

。 3335

jetson orin nano 使用cuPCL

jetson开发板上使用pcl时,正常使用的是cpu,拖慢了整体的效率。cuPCL有一些库用于使用CUDA处理点云。

weixin_42256401的博客 1020

ant表单校验页面值符合校验规则 但校验不通过

项目需求下拉选择框有全部核销和部分核销,要求全部核销时,将本金赋值给核销金额字段,且input灰显,选择部分核销时手工录入。之前尝试直接赋值,虽然页面上显示有值,但是组件并未拿到该值,导致校验规则不通过,且由全部核销切换为部分核销时还出现了输入框不能录入的问题。.........

weixin_42478537的博客 4203

【AUTOSAR SystemServices】AUTOSAR CP中Watchdog Manager模块技术解析

本文深入解析了AUTOSAR中的Watchdog Manager模块实现。该模块通过多层次监督机制(Alive/Deadline/Logical Supervision)确保系统安全运行,具备动态模式切换和分级故障处理能力。 关键实现包括: 数据结构设计:包含监督实体状态结构体(实时状态维护)、监督配置结构体(支持模式切换)和全局状态信息(系统级监控) 核心流程优化:初始化采用事务性设计,检查点处理通过条件编译优化,主监控循环采用流水线式并行处理 监督机制实现:Alive监督采用滑动窗口算法,Deadlin

1038

AUTOSAR进阶图解==>AUTOSAR_SWS_ADCDriver

本文深入解析了AUTOSAR ADC Driver的架构设计和技术实现。主要内容包括:1)ADC Driver在AUTOSAR分层架构中的定位及核心功能;2)详细的模块架构设计,涵盖初始化管理、组转换管理、优先级处理等核心子组件;3)全面的配置模型说明,包括主配置类、通用配置、通道配置等关键数据结构;4)状态机机制和操作序列分析。通过分层设计和标准化接口,ADC Driver实现了硬件抽象和软件解耦,提供了良好的可移植性和可维护性。

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 786

Ant Design 表单校验报错:Warning: `callback` is deprecated. Please return a promise instead.

ant-design使用validate方法触发表单校验报错Warning: `callback` is deprecated. Please return a promise instead.

qq_45327886的博客 619

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

ant design 校验错误提示 伪元素加图标

// 校验错误提示 伪元素加图标 .ant-form-explain::before { content: url('~@/assets/icons/circle-waring.png'); vertical-align: middle; color: #9f1010; margin-right: 5px; }

weixin_53575576的博客 474

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

antd vue表单校验中,自定义组件校验时错误提示不自动消失的问题

antd vue表单组件中,自定义组件校验时错误自动消失的问题处理

Wq_2977的博客 1902

ant-design-vue 踩雷合集

解决方法: 使用全选onSelectAll(selected, selectedRows, changeRows)和onSelect(selected, selectedRows, changeRows)更新接收的数据。原因:在onChange(selectedRowKeys, selectedRows)方法中接收的选中值,此方法中的selectedRows不记录分页之前的数据,选中的数据被更新掉了。原因:table表格的rowKey属性绑定的值不对,应该绑定选中的值的字段。

weixin_43828487的博客 370

vue3.0中使用ant design vue 表单内部分元素不校验

博主最近在写vue3.0项目 组件库为蚂蚁金服的ant design vue 在写表单时,有一个短信登陆的需求 布局为左边Input框 右边按钮 源码大概如下 <a-form-item label="短信登录" name="code"> <a-row> <a-col :span="14"> <a-input v-model:value="loginForm.code" />

qq_43390061的博客 6041

Ant-Design-Vue快速上手指南+排坑

前言 公司要开发一个后台管理系统,对于UI库的选择上选择了颜值爆表的Ant-Design-Vue作为整个项目UI库,但谁曾想,暗中的坑一个接一个,文档也不怎么详细,可能习惯了element-ui的掘友们也许不怎么好适应,本文就带大家一起学习如何高效使用Ant-Design-Vue。 NO.1 表单组件 首先就来说说最常用的Form组件的正确使用姿势: 先来看官方一段话述: 第一、我们不推荐在For...

雒曼的博客 3万+

ant design ui表单赋值报错

You cannot set a form field before rendering a field associated with the value. You can use getFieldDecorator(id, options) instead v-decorator="[id, options]" to register it before render. 使用ant desion 给表单赋值的时候报这个错 原因:赋值的时候赋了多余的、表单里面不存在的字段 比如表单只有两个字段 usern

qq_37482427的博客 1093

Ant Design VUE表单校验之自定义服务端校验

引言 本文章涉及的代码块,为实际代码中的截取部分,请各位结合自己的实际情况修改 开始 这里我的校验需求是编号不可重复,如果重复需要抛出校验信息 表单结构部分 根据Ant Design VUE的文档定义好需要的字段 <a-modal :visible="visible" title="项目定义信息" :width="800"> <a-form-model ref="project" :rules="rules" :label-col="{ span: 6 }" :wrappe

aa245455945的博客 1233

ant design vue自定义表单验证不生效和自定义校验内容有值后自动清除警告的方法

从而如果有警告提示信息,尽管用户在之后输入了新值,也依旧会有报错,那么要怎么解决呢?有时候我们使用了自定义规则校验,无论是。

动感超人的博客 8512

ant-design-vue对起始时间的校验

ant-design-vue对起始时间的校验 由于要添加对起始时间的校验,项目中无法直接使用this.model.value获取当前的字段,因此需要j-date上添加一组v-model,保证可以获取到当前字段的值,再对其进行校验。(当前也获取不到this.form的值) 添加起始时间的自定义校验 这些方法中的model值是从上面v-model中获取到的 至此校验就写好了 不过当前存在一个问题,控制台一直有报错,但是未找到合理 的解决方法 如有解决报错方法,还请指教。 附上源码: <temp

csdnlaiyanqi的博客 1311

Vue CLI 3构建vue+组件库ant design pro前端项目

开始构建 vue-cli 3 (vue-cli里包含了webpack) vue init webpack ant-design-vue-pro cd d: cd D:\webstorm_project2020\ant-design-vue-pro npm i ant-design-vue moment npm run server ...

Seven71111的博客 2799
上一篇: 微信小程序原生组件使用
FF_XM
博客等级 码龄5年 19粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值