修改ID不能用关键字作为ID校验器-elementPlus

devtools/2024/10/8 22:44:50/

1、校验器方法 - forbiddenCharValidator 

javascript">const idUpdateFormRef = ref(null);
const forbiddenCharValidator = (rule, value, callback) => {const forbiddenCharacters = ['as','for','default','in','join','left','inner','right','where','when','case','select'];for (let forbiddenCharacter of forbiddenCharacters) {if (value && value === forbiddenCharacter) {callback(new Error(`不能使用关键字 '${forbiddenCharacter}' 作为ID`));return;}}callback();
};

2、校验规则

javascript">const idFormRules = {guidText: [{required: true,message: '请输入ID',trigger: 'blur'},{ validator: forbiddenCharValidator, trigger: 'blur' },{ min: 8, max: 8, message: 'ID必须为8位', trigger: 'blur' },{pattern: /^[a-z0-9]+$/,message: '输入只能包含小写字母和数字',trigger: 'blur'}]
};

3、 确定事件

通过校验才能关闭弹窗

javascript">const confirmModifyIdDialog = () => {guidUpdateFormRef.value.validate((valid) => {if (valid) {openModifyIdDialog.value = false;}});
};

4、html

<el-dialog v-model="openModifyIdDialog" title="修改ID"><el-formref="idUpdateFormRef":model="idUpdateForm":rules="idFormRules"><el-form-itemlabel="ID:"style="margin-left: 20px"prop="idText"><el-inputv-model="idUpdateForm.idText"placeholder="请输入ID"/></el-form-item></el-form><template #footer><div class="dialog-footer"><el-button @click="cancelModifyIdDialog">取消</el-button><el-button type="primary" @click="confirmModifyIdDialog">确定</el-button></div></template>
</el-dialog>

 以上就是实现关键字校验器的具体步骤。


http://www.ppmy.cn/devtools/123069.html

相关文章

基于ScriptableObject设计游戏数据表

前言 本篇文章是针对之前对于ScriptableObject概念讲解的实际应用之一&#xff0c;在游戏开发中&#xff0c;我们可以使用该类来设计编辑器时的可读写数据表或者运行时的只读数据表。本文将针对运行时的只读数据表的应用进行探索&#xff0c;并且结合自定义的本地持久化存储方式…

pycharm中使用anaconda创建多环境,无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

问题描述 用的IDE是&#xff1a; 使用anaconda创建了一个Python 3.9的环境 结果使用pip命令的时候&#xff0c;报错 无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称 解决方案 为了不再增加系统变量&#xff0c;我们直接将变量添加在当前项目中你的Ter…

主流前端框架实际案例说明

为了更深入地理解不同前端框架的特点和适用场景&#xff0c;以下将通过几个具体案例分析&#xff0c;探讨在实际项目中选择框架的决策过程。 案例一&#xff1a;电商平台开发 项目背景 一个新兴电商平台希望快速上线&#xff0c;提供良好的用户体验和性能&#xff0c;同时需…

命名管道Linux

管道是 毫不相关的进程进程间通信::命名管道 管道 首先自己要用用户层缓冲区&#xff0c;还得把用户层缓冲区拷贝到管道里&#xff0c;&#xff08;从键盘里输入数据到用户层缓冲区里面&#xff09;&#xff0c;然后用户层缓冲区通过系统调用&#xff08;write&#xff09;写…

Mybatis-plus做了什么

Mybatis-plus做了什么 Mybatis回顾以前的方案Mybatis-plus 合集总览&#xff1a;Mybatis框架梳理 聊一下mybatis-plus。你是否有过疑问&#xff0c;Mybatis-plus中BaseMapper方法对应的SQL在哪里&#xff1f;它为啥会被越来越多人接受。在Mybatis已经足够灵活的情况下&…

SQL第12课——联结表

三点&#xff1a;什么是联结&#xff1f;为什么使用联结&#xff1f;如何编写使用联结的select语句 12.1 联结 SQL最强大的功能之一就是能在数据查询的执行中联结&#xff08;join)表。联结是利用SQL的select能执行的最重要的操作。 在使用联结前&#xff0c;需要了解关系表…

用 LoRA 微调 Stable Diffusion:拆开炼丹炉,动手实现你的第一次 AI 绘画

总得拆开炼丹炉看看是什么样的。这篇文章将带你从代码层面一步步实现 AI 文本生成图像&#xff08;Text-to-Image&#xff09;中的 LoRA 微调过程&#xff0c;你将&#xff1a; 了解 Trigger Words&#xff08;触发词&#xff09;到底是什么&#xff0c;以及它们如何影响生成结…

力扣59.螺旋矩阵||

题目链接&#xff1a;59. 螺旋矩阵 II - 力扣&#xff08;LeetCode&#xff09; 给你一个正整数 n &#xff0c;生成一个包含 1 到 n2 所有元素&#xff0c;且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff…