uniapp 之 uni-forms校验提示【提交的字段[‘xxx‘]在数据库中并不存在】解决方案

目录

    • 场景
    • 问题代码
    • 结果
    • 问题剖析
    • 解决方案

场景

  uni-forms官方组件地址

  使用uniapp官方提供的组件,某个表单需求,单位性质字段如果是高校,那么工作单位则是高校的下拉选择格式,单位性质如果是其他的类型,工作单位则是手动输入的输入框格式的。

  

问题代码

<uni-forms ref="form" :modelValue="formData" :rules="rules" class="form-box" err-show-type="toast" label-width="120px" border><!-- ...只放了一些主要代码... --><uni-forms-item label="单位性质" name="unitCategory" required><z-picker dict-type="icm_unit_category" v-model="formData.unitCategory"></z-picker></uni-forms-item><uni-forms-itemlabel="工作单位"name="unitName"requiredv-if="formData.unitCategory != 1"><uni-easyinput v-model="formData.unitName" placeholder="请输入" :input-border="false" maxlength="50" /></uni-forms-item><uni-forms-itemlabel="工作单位"name="tenantId"requiredv-if="formData.unitCategory == 1"><z-selectv-model="formData.tenantId"url="/admin-api/system/tenant/list":query-params="{ pageNo: 1, pageSize: 100, unitCategory: 1 }"search-key="name"result-key="list"label-key="name"@curr-item="(item) => (formData.unitName = item.name)"></z-select></uni-forms-item><!-- ...只放了一些主要代码... -->
</uni-forms><view class="flex-item-center btns fixed-bottom-box"><button type="primary" plain class="save-btn" @click="save">暂 存</button><button type="primary" class="submit-btn" @click="submit">提 交</button>
</view>
submit: $debounce.throttle(async function () {await this.$refs.form.validate()// ... 其他提交逻辑代码
})         

  

结果

  点击提交结果提示:提交的字段['tenantId']在数据库中并不存在
在这里插入图片描述
在这里插入图片描述

  

问题剖析

  出现这个问题是因为v-if导致的,初始的时候条件没有满足,导致相应的dom没有渲染,后续虽然满足了条件,dom渲染了,但是由于ui-forms组件等原因并没有正确获取的重新渲染后的dom中的变量;

  

解决方案

  • 方案1:给v-if绑定的元素加key
<uni-forms-itemlabel="工作单位"name="unitName"requiredv-if="formData.unitCategory != 1":key="formData.unitCategory"
><uni-easyinput v-model="formData.unitName" placeholder="请输入" :input-border="false" maxlength="50" />
</uni-forms-item>
<uni-forms-itemlabel="工作单位"name="tenantId"requiredv-if="formData.unitCategory == 1":key="formData.unitCategory"
><z-selectv-model="formData.tenantId"url="/admin-api/system/tenant/list":query-params="{ pageNo: 1, pageSize: 100, unitCategory: 1 }"search-key="name"result-key="list"label-key="name"@curr-item="(item) => (formData.unitName = item.name)"></z-select>
</uni-forms-item>
  • 方案2:给v-if的元素再套一层父元素如<template>,并将v-if放到父元素上面
<template v-if="formData.unitCategory != 1"><uni-forms-itemlabel="工作单位"name="unitName"required><uni-easyinput v-model="formData.unitName" placeholder="请输入" :input-border="false" maxlength="50" /></uni-forms-item>
</template>
<template v-if="formData.unitCategory == 1"><uni-forms-itemlabel="工作单位"name="tenantId"required><z-selectv-model="formData.tenantId"url="/admin-api/system/tenant/list":query-params="{ pageNo: 1, pageSize: 100, unitCategory: 1 }"search-key="name"result-key="list"label-key="name"@curr-item="(item) => (formData.unitName = item.name)"></z-select></uni-forms-item>
</template>

完美解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/65722.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度学习知识点:RNN

文章目录 1.简单介绍2.网络结构3.应对梯度消失 1.简单介绍 循环神经网络&#xff08;RNN&#xff0c;Recurrent Neural Network&#xff09;是一类用于处理序列数据的神经网络。与传统网络相比&#xff0c;变化不是特别大&#xff0c;不如CNN的变化那么大。 为什么要有循环神经…

(leetcode算法题)287. 寻找重复数(经典题目,二分解法)

如果一个题目限定了数据范围是[1, n]内的整数&#xff0c;那么这个题目可以思考的就是 nums[i]和 i 的关系&#xff0c;769. 最多能完成排序的块 这个题就使用到了子数组中最大值和 连续[0, n - 1]的关系 而对于本题来说&#xff0c;也可以思考[1, n] 和 nums[i] 的关系&…

4.1、二纤单向、二纤双向、四纤双向,网络级保护

1、线性复用段保护&#xff08;LMSP&#xff09; 就像是给网络业务传输准备的一个 “保险”。在 SDH 和 MSTP 网络里&#xff0c;业务信号要通过一段一段的路&#xff08;复用段&#xff09;来传输&#xff0c;LMSP 就是为了保证这些路出问题的时候&#xff0c;业务还能正常走。…

【数据库】一、数据库系统概述

文章目录 一、数据库系统概述1 基本概念2 现实世界的信息化过程3 数据库系统内部体系结构4 数据库系统外部体系结构5 数据管理方式 一、数据库系统概述 1 基本概念 数据&#xff1a;描述事物的符号记录 数据库&#xff08;DB&#xff09;&#xff1a;长期存储在计算机内的、…

【JVM-2.1】如何使用JMC监控工具:详细步骤与实战指南

Java Mission Control&#xff08;JMC&#xff09;是Oracle提供的一个高级图形化监控工具&#xff0c;专为Java应用程序的性能分析和故障排查设计。JMC不仅提供了实时监控功能&#xff0c;还支持飞行记录器&#xff08;Flight Recorder&#xff09;功能&#xff0c;能够记录JVM…

QT c++ 样式 设置 标签(QLabel)的渐变色美化

上一篇文章中描述了按钮的纯色&#xff0c;本文描述标签的渐变色美化。 1.头文件 #ifndef WIDGET_H #define WIDGET_H #include <QWidget> //#include "CustomButton.h"#include <QVBoxLayout> #include <QLinearGradient> #include <QLabel…

设计模式 行为型 观察者模式(Observer Pattern)与 常见技术框架应用 解析

观察者模式&#xff08;Observer Pattern&#xff09;是一种行为设计模式&#xff0c;它定义了一种一对多的依赖关系&#xff0c;让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时&#xff0c;会通知所有观察者对象&#xff0c;使它们能够自动更新。 一…

03_Redis基本操作

1.Redis查询命令 1.1 官网命查询命令 为了便于学习Redis,官方将其用于操作不同数据类型的命令进行了分类整理。你可以通过访问Redis官方网站上的命令参考页面https://redis.io/commands来查阅这些分组的命令,这有助于更系统地理解和使用Redis的各项功能。 1.2 HELP查询命令…

探索式测试

探索式测试是一种软件测试风格&#xff0c;它强调独立测试人员的个人自由和职责&#xff0c;为了持续优化其工作的价值&#xff0c;将测试学习、测试设计、测试执行和测试结果分析作为相互支持的活动&#xff0c;在整个项目实现过程中并行地执行。 选择合适的探索式测试方法我…

uniapp 微信小程序内嵌h5实时通信

描述&#xff1a; 小程序webview内嵌的h5需要向小程序实时发送消息&#xff0c;有人说postMessage可以实现&#xff0c;所以试验一下&#xff0c;结果是实现不了实时&#xff0c;只能在特定时机后退、组件销毁、分享时小程序才能接收到信息&#xff08;小程序为了安全等考虑做了…

php 使用simplexml_load_string转换xml数据格式失败

本文介绍如何使用php函数解析xml数据为数组。 <?php$a <xml><ToUserName><![CDATA[ww8b77afac71336111]]></ToUserName><FromUserName><![CDATA[sys]]></FromUserName><CreateTime>1736328669</CreateTime><Ms…

HOW - Form 表单 label 和 wrapper 对齐场景

一、背景 在日常使用 表单 时&#xff0c;我们一般有如下布局&#xff1a; 可以通过 Form 表单提供的配置直接设置&#xff1a; <Formform{form}labelCol{{ span: 4 }}wrapperCol{{ span: 20 }}onFinish{handleSubmit}><Form.Itemlabel"输入框"name"…

转运机器人在物流仓储行业的优势特点

在智能制造与智慧物流的浪潮中&#xff0c;一款革命性的产品正悄然改变着行业的面貌——富唯智能转运机器人&#xff0c;它以卓越的智能科技与创新的设计理念&#xff0c;引领着物流领域步入一个全新的高效、智能、无人的时代。 一、解放双手&#xff0c;重塑物流生态 富唯智能…

基于单片机的无线智能窗帘控制器的设计

摘 要 : 本文以单片机为控制核心 , 基于 PT2262/ 2272 无线收发模块 , 实现了窗帘的无线远程智能控制 . 该控制器通过高频无线收发模块实现了遥控窗帘的开合控制; 根据外部光线强弱实现自动开关窗帘 ; 根据设定时间自动完成开关过程; 通过语音播报当前环境温湿度信息以…

linux centos挂载未分配的磁盘空间

使用到的命令 lshw -class disk -short hostnamectl fdisk /dev/sdb partprobe /dev/sdb mount /dev/sdb2 /opt/fastdfs/ mkfs.ext4 /dev/sdb2 mount -t ext4 /dev/sdb2 /opt/fastdfs/

Vivado中Tri_mode_ethernet_mac的时序约束、分析、调整——(一)时序约束的基本概念

1、基本概念 推荐阅读&#xff0c;Ally Zhou编写的《Vivado使用误区与进阶》系列文章&#xff0c;熟悉基本概念、tcl语句的使用。 《Vivado使用误区与进阶》电子书开放下载&#xff01;&#xff01; 2、Vivado中的语法例程 1&#xff09;语法例程 约束的语句可以参考vivado…

基于Spring Boot的城市垃圾分类管理系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…

【YOLOv8杂草作物目标检测】

YOLOv8杂草目标检测 算法介绍模型和数据集下载 算法介绍 YOLOv8在禾本科杂草目标检测方面有显著的应用和效果。以下是一些关键信息的总结&#xff1a; 农作物幼苗与杂草检测系统&#xff1a;基于YOLOv8深度学习框架&#xff0c;通过2822张图片训练了一个目标检测模型&#xff…

比亚迪夏直插家用MPV腹地,“迪王”开启全面销冠新征程

文/王俣祺 导语&#xff1a;比亚迪前脚刚收获2024年的全面成功&#xff0c;后脚立刻就开始布局2025年的产品矩阵了。比亚迪夏的横空出世&#xff0c;看来家用MPV市场也要感受“迪王”的恐怖如斯了。 家用MPV市场的“意外之喜” 1月8日&#xff0c;比亚迪夏终于在万众瞩目之下…

探索数据存储的奥秘:深入理解B树与B+树

key value 类型的数据红黑树&#xff08;最优二叉树&#xff0c;内存最优&#xff09;&#xff0c;时间复杂度&#xff1a;O&#xff08;logn&#xff09;,调整方便&#xff1b;一个结点分出两个叉B树一个节点可以分出很多叉数据量相等的条件下&#xff1a;红黑树的层数很高&am…