当前位置: 首页 > news >正文

Vue-自定义表单验证(rule,value,callback)详细使用

前言

  • 最近在实际开发中遇到需要验证合同编号是否在数据库已经存在,自定义表单验证。

  • 的表单验证大家都知道form绑定rules,prop绑定值与form.值一样,必填,失去焦点触发 提示信息。

  • 今天我们讲一讲自定义验证规则具体使用场景和它的三个参数意思和使用

  • 当我们明白了 validator3个参数意思,我们就可以随机组合我们自己的验证规则了

自定义验证规则

prop绑定值: [{validator: (rule, value, callback) => {console.log('验证规则信息',rule);console.log('输入框的值',rule);// callback()为空通过验证// callback(new Error('未通过验证,抛出异常'))console.log('是否通过验证规则',callback);},// 失去焦点触发trigger: "blur",},],

使用场景-正则验证是否是手机号

test()方法:用于检测字符串中指定的值,匹配成功返回true,匹配失败返回false

prop绑定值: [{ validator:  (rule, value, callback) {// 手机号正则表达式const reg = /^[1][3,4,5,7,8][0-9]{9}$/if (value == '' || value == undefined || value == null) {callback()} else {// 正则失败false,取反true抛出异常if (!reg.test(value) && value != '') {// 抛出异常,验证规则有错callback(new Error('请输入正确的电话号码'))} else {callback()}}// 输入框值变化一次执行一次}, trigger: "change" },],

使用场景-判断合同编号是否重复

prop绑定值: [{ required: true, message: "请输入合同编号", trigger: "blur" },{validator: async (rule, value, callback) => {// 发请求const res = await adrepetition(value);console.log("合同编号", res// 判断状态码if (res.code == 200) {callback();} else {callback(new Error("合同编号重复,请重新输入"));}},trigger: "blur",},],

使用场景-多选判断是否选中

checkListmain是data里面数据,是多选v-model绑定的值,是一个数组

prop绑定值: [{ required: true, message: "请输入合同编号", trigger: "blur" },{validator: async (rule, value, callback) => {// 发请求const res = await adrepetition(value);console.log("合同编号", res// 判断状态码if (res.code == 200) {callback();} else {callback(new Error("合同编号重复,请重新输入"));}},trigger: "blur",},],

总结:

经过这一趟流程下来相信你也对 Vue-自定义表单验证(rule,value,callback)详细使用 有了初步的深刻印象,但在实际开发中我 们遇到的情况肯定是不一样的,所以我们要理解它的原理,万变不离其宗。加油,打工人!

什么不足的地方请大家指出谢谢 -- 風过无痕

相关文章:

Vue-自定义表单验证(rule,value,callback)详细使用

前言 最近在实际开发中遇到需要验证合同编号是否在数据库已经存在,自定义表单验证。 的表单验证大家都知道form绑定rules,prop绑定值与form.值一样,必填,失去焦点触发 提示信息。 今天我们讲一讲自定义验证规则具体使用场景和它…...

港联证券|TMT板块全线退潮,这些个股获主力逆市抢筹

计算机、电子、传媒、通讯职业流出规模居前。 今天沪深两市主力资金净流出709.92亿元,其中创业板净流出218.36亿元,沪深300成份股净流出187.92亿元。 资金流向上,今天申万一级职业普跌,除了国防军工职业小幅上涨,获主…...

WPF学习

一、了解WPF的框架结构 (第一小节随便看下就可以,简单练习就行) 1、新建WPF项目 xmlns:XML的命名空间 Margin外边距:左上右下 HorizontalAlignment:水平位置 VerticalAlignment:垂直位置 2…...

C#使用WebDriver模拟浏览器操作WEB页面

有时候需要模拟访问页面触发某个功能,可以使用WebDriver来实现这一功能,驱动打开浏览器,并对页面重定向以及对页面写入脚本等操作。 安装Selenium.Chrome,Selenium.Support.UI,Selenium 引入 using OpenQA.Selenium.…...

正则表达式 - 简单模式匹配

目录 一、测试数据 二、简单模式匹配 1. 匹配字面值 2. 匹配数字和非数字字符 3. 匹配单词与非单词字符 4. 匹配空白字符 5. 匹配任意字符 6. 匹配单词边界 7. 匹配零个或多个字符 8. 单行模式与多行模式 一、测试数据 这里所用文本是《学习正则表达式》这本书带的&a…...

银行数字化转型导师坚鹏:银行数字化转型培训方案

目录 一、银行数字化转型培训背景 二、银行数字化转型模型 三、银行数字化转型课程设计思路 四、 银行数字化转型课程基本介绍 五、 银行数字化转型课程设置 六、银行数字化转型课程大纲 七、培训方案实施流程 一、银行数字化转型培训背景 2020年1月3日&#xff…...

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测 目录 多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-CNN-…...

Shell知识点(一)

1.echo 命令 echo命令的作用是在屏幕输入一行文本&#xff0c;可以降该命令的参数原样输出。 $ echo hello world hello world 如果想要输出的是多行文本&#xff0c;包含换行符&#xff0c;这时就需要把多行文本放在引号里面 $ echo "<HTML><HEAD><TITLE…...

mysql 索引失效、联合索引失效场景和举例

索引失效 假设有一张user 表&#xff0c;表中包含索引 (id); (name); (birthday); (name,age); 对索引字段进行函数操作 select name from user where year(birthday) 2000;使用模糊查询&#xff0c;查询中使用通配符 select name from user where name like %益达%;使用i…...

快速将PDF转换为图片:使用在线转换器的步骤

PDF文件是一种常见的文档格式&#xff0c;但在某些情况下需要将其转换为图片格式&#xff0c;例如将PDF文件插入PPT演示文稿中。此时&#xff0c;使用在线PDF转换器是一种快速且简便的方法。 本文将介绍如何使用在线转换器将PDF文件转换为图片格式。 步骤1&#xff1a;选择合…...

什么是gpt一4-如何用上gpt-4

怎么使用gpt-4 目前GPT-4还未正式发布或公开&#xff0c;因此也没有详细的对接说明。但是我们可以根据GPT-4的前身GPT-3的应用经验&#xff0c;以及GPT-4的预期功能推测一些可能的使用步骤&#xff1a; 选择适合的GPT-4实现技术&#xff1a;GPT-4可能有不同的实现技术&#xff…...

Docker 相关概念

1、Docker是什么&#xff1f; 如何确保应用能够在这些环境中运行和通过质量检测&#xff1f;并且在部署过程中不出现令人头疼的版本、配置问题&#xff0c;也无需重新编写代码和进行故障修复&#xff1f; 答案就是使用容器。Docker之所以发展如此迅速&#xff0c;也是因为它对…...

STM32平衡小车 TB6612电机驱动学习

TB6612FNG简介 单片机引脚的电流一般只有几十个毫安&#xff0c;无法驱动电机&#xff0c;因此一般是通过单片机控制电机驱动芯片进而控制电机。TB6612是比较常用的电机驱动芯片之一。 TB6612FNG可以同时控制两个电机&#xff0c;工作电流1.2A&#xff0c;最大电流3.2A。 VM电…...

动态加载 JS 文件

动态加载JS文件是指在网页运行过程中通过JavaScript代码向页面中动态添加外部JS文件&#xff0c;这种方式能够提高页面加载速度和用户体验&#xff0c;并且可以帮助网站实现更多的功能和特效。 本文将详细介绍动态加载JS文件的基本原理、优势、注意事项以及具体实现方法&#…...

14、lldb调试指令

LLDB LLDB(Low Lever Debug): 默认内置于Xcode中的动态调试工具.标准的lldb提供了一组广泛的命令,旨在与老版本的GDB命令兼容.除了使用标准配置外,还可以很容易地自定义lldb以满足实际需要. 1.1 lldb语法: <command> [<subcommand> [<subcommand>...]] &l…...

浏览器缓存策略:强缓存和协商缓存

浏览器缓存&#xff1a;其实就是在本地使用的计算机中开辟一个内存区&#xff0c;同时也开辟一个硬盘区&#xff0c;作为数据传输的缓冲区&#xff0c;然后利用这个缓冲区来暂时保护用户以前访问的信息通常浏览器的缓存策略分为两种&#xff1a;强缓存和协商缓存&#xff0c;强…...

2023年Chat GPT 应用前景分析

从2022年12月初刚上线至今&#xff0c;不到半年时间ChatGPT月活就超过了1亿用户&#xff01;可谓火的一塌糊涂&#xff0c;比尔盖茨都称&#xff1a;ChatGPT的历史意义重大&#xff0c;不亚于PC或互联网诞生。以至于ChatGPT官网长期都处于满负荷运转的状态&#xff01; 由于Ch…...

并发计算公式

常用并发数计算公式&#xff1a;N[(n0.8SP)/(T0.2)]*R 其中&#xff1a; n为系统用户数&#xff1b; S为每个用户发生的业务笔数&#xff08;QPS&#xff09;&#xff1b; P为每笔业务所需要访问服务器的时间&#xff0c;单位为秒&#xff1b; T为使用业务的时间&#xff0c;单…...

“华为杯”研究生数学建模竞赛2020年-【华为杯】E题:能见度估计与预测(附获奖论文及python代码实现)

​​​​​​​ 目录 摘 要: 一、问题背景与问题重述 1.1 问题背景 1.2 问题重述...

Arduino学习笔记3

一.RGB三色小灯实验 1.源代码 int rgb_R11;//接到板子上面的PWM口11 R int rgb_G9;//接到板子上面的PWM口9 G int rgb_B10;//接到板子上面的PWM口10 B void setup() {pinMode(rgb_R,OUTPUT);//设置rgb_R的控制口为输出模式pinMode(rgb_G,OUTPUT);//设置rgb_G的控制口为输出模…...

突破数据瓶颈:6大创新方法让时间序列模型性能提升150%

突破数据瓶颈&#xff1a;6大创新方法让时间序列模型性能提升150% 【免费下载链接】Time-Series-Library A Library for Advanced Deep Time Series Models for General Time Series Analysis. 项目地址: https://gitcode.com/GitHub_Trending/ti/Time-Series-Library 在…...

PX4飞控系统架构深度解析:从模块化设计到自主飞行实战

PX4飞控系统架构深度解析&#xff1a;从模块化设计到自主飞行实战 【免费下载链接】PX4-Autopilot PX4 Autopilot Software 项目地址: https://gitcode.com/gh_mirrors/px/PX4-Autopilot PX4作为开源无人机飞控系统的行业标准&#xff0c;为开发者提供了从多旋翼到固定翼…...

OpenClaw调试技巧:Qwen3.5-9B任务失败的回溯与日志分析

OpenClaw调试技巧&#xff1a;Qwen3.5-9B任务失败的回溯与日志分析 1. 为什么需要系统化的调试方法 上周我让OpenClaw帮我整理桌面上的100多份PDF文件&#xff0c;结果它把所有的会议纪要都归类到了"技术文档"文件夹。这个看似简单的任务背后&#xff0c;暴露了自动…...

揭秘Zotero PDF Translate离线翻译方案:学术研究数据安全新范式

揭秘Zotero PDF Translate离线翻译方案&#xff1a;学术研究数据安全新范式 【免费下载链接】zotero-pdf-translate Translate PDF, EPub, webpage, metadata, annotations, notes to the target language. Support 20 translate services. 项目地址: https://gitcode.com/gh…...

GLM-4.1V-9B-Base效果展示:低质量压缩图(微信发送后)识别鲁棒性

GLM-4.1V-9B-Base效果展示&#xff1a;低质量压缩图&#xff08;微信发送后&#xff09;识别鲁棒性 1. 模型介绍 GLM-4.1V-9B-Base是智谱开源的视觉多模态理解模型&#xff0c;专门针对图像内容识别、场景描述、目标问答和中文视觉理解任务进行了优化。这个9B参数的模型在保持…...

LSM303DLHC驱动开发:磁力计校准与六轴姿态解算

1. LSM303DLHC 姿态感知核心&#xff1a;高精度磁力计与加速度计集成库深度解析LSM303DLHC 是意法半导体&#xff08;STMicroelectronics&#xff09;推出的紧凑型六轴惯性测量单元&#xff08;IMU&#xff09;&#xff0c;集成了三轴加速度计&#xff08;2g/4g/8g 可选量程&am…...

KCD Beijing 2026 分享回顾:从 Device Plugin 到 DRA——GPU 调度范式升级与 HAMi-DRA 实践

KCD Beijing 2026 是近年来规模最大的 Kubernetes 社区大会之一&#xff0c;超过 1000 人报名参与&#xff0c;刷新了历届 KCD 北京的记录。HAMi 社区不仅受邀进行了技术分享&#xff0c;也在现场设立了展台&#xff0c;与来自云原生与 AI 基础设施领域的开发者和企业用户进行了…...

Ostrakon-VL 提示词(Prompt)工程高级技巧:控制输出格式与风格

Ostrakon-VL 提示词&#xff08;Prompt&#xff09;工程高级技巧&#xff1a;控制输出格式与风格 1. 引言&#xff1a;为什么需要掌握Prompt工程&#xff1f; 如果你用过Ostrakon-VL这类多模态大模型&#xff0c;可能遇到过这样的困扰&#xff1a;明明输入了很详细的描述&…...

OpenClaw版本升级:Qwen3-4B兼容性测试与迁移方案

OpenClaw版本升级&#xff1a;Qwen3-4B兼容性测试与迁移方案 1. 升级前的准备工作 上周五晚上&#xff0c;当我准备给团队演示OpenClaw的自动化流程时&#xff0c;突然发现控制台弹出了版本更新提示。这个看似简单的升级通知&#xff0c;却让我经历了整整两天的兼容性调试。今…...

单例模式全解析:5种写法 + 破坏与防护

文章目录什么是单例模式?实现方式饿汉式懒汉式方式一&#xff08;线程不安全&#xff09;方式二&#xff08;同步方法&#xff09;方式三&#xff08;双重检查锁 DCL&#xff09;枚举什么是单例模式? 保证一个类在全局只有一个实例&#xff0c;并提供一个全局访问点。 适用场…...