news 2026/1/27 5:13:58

Ant Design Vue V1.7.8版本,a-input 去空格

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Ant Design Vue V1.7.8版本,a-input 去空格

目前项目在使用Vue2.6+Ant Design Vue V1.7.8版本开发,其实就是用了jeecg的框架,发现这个比较旧的版本没有**.trim()**的方法,所以只能手搓;

第一种:全局添加

注意:用了第一种发现在使用苹果电脑的时候,苹果输入法有bug;
注意:用了第一种发现在使用苹果电脑的时候,苹果输入法有bug;
注意:用了第一种发现在使用苹果电脑的时候,苹果输入法有bug;

main.js文件

mounted(){document.body.addEventListener('input',this.removeSpacesFromInput,true);}//去掉input的空格methods:{removeSpacesFromInput(e){// 判断是否为 Ant Design 的 a-input 元素if(e.target.tagName==='INPUT'){if(e.target.closest('.ant-input')){// 对 Ant Design 的 a-input 组件去除空格e.target.value=e.target.value.replace(/\s+/g,'');}elseif(e.target.closest('.el-input__inner')){// 对 Element UI 的 el-input 组件去除空格e.target.value=e.target.value.replace(/\s+/g,'');}}}},//去掉input的空格beforeDestroy(){// 在组件销毁前移除事件监听document.body.removeEventListener('input',this.removeSpacesFromInput,true);}

第二种:在单个页面中,单个输入框中使用

例子一:

a-input 输入框使用了v-model的情况下

<a-form-model-item label="往来单位名称"prop="supplierName"><a-input v-model="form.supplierName"@input="handleSupplierNameInput"placeholder='请输入往来单位名称!':disabled="type == 'detail'"/></a-form-model-item>// 在方法里面实现methods:{handleSupplierNameInput(e){constvalue=e.target.value;consttrimmedValue=value.replace(/\s+/g,'');if(value!==trimmedValue){this.$nextTick(()=>{this.form.supplierName=trimmedValue;});}else{this.form.supplierName=value;}},}
例子二:

使用 v-decorator 的方式

data(){return{form:this.$form.createForm(this),}}a-form-item label="姓名"><a-input v-decorator="['contactName',{rules:[{required:true,message:'请输入姓名!'}],getValueFromEvent:(event)=>event.target.value.replace(/\s+/g,''),initialValue:'',validateTrigger:'blur'}]" placeholder='请输入姓名':disabled="type == 'detail'"/></a-form-item>
例子三:

使用 v-decorator 的方式 + 自定义校验

data(){return{validatorRules:{username:{rules:[{required:true,message:'请输入用户账号!'},{pattern:/^[a-zA-Z0-9]+$/,// 正则匹配英文数字message:'只能输入英文或数字!'},{validator:this.validateUsername,}]},}}}<a-form-item label="用户账号":labelCol="labelCol":wrapperCol="wrapperCol"><a-input placeholder="请输入用户账号(输入英文或数字)"v-decorator="['userName',{rules:validatorRules.username?validatorRules.username.rules:[],getValueFromEvent:(event)=>event.target.value.replace(/\s+/g,''),initialValue:'',validateTrigger:'blur'}]":readOnly="!!model.id"autocomplete="new-userName"/></a-form-item>

以上就是我目前遇到的几种情况吧

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/16 15:00:54

基于vue和SpringBoot的英语四六级报名与成绩管理系统设计与实现

目录已开发项目效果实现截图开发技术系统开发工具&#xff1a;核心代码参考示例1.建立用户稀疏矩阵&#xff0c;用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&…

作者头像 李华
网站建设 2026/1/26 22:42:26

Nginx入门配置:10分钟搞定Web服务器

Nginx入门配置&#xff1a;10分钟搞定Web服务器 想把网站跑起来&#xff1f;Nginx是最常用的Web服务器&#xff0c;轻量高效。 今天教你快速入门&#xff0c;10分钟搞定基础配置。 安装 Ubuntu/Debian&#xff1a; sudo apt update sudo apt install nginxCentOS&#xff1a; s…

作者头像 李华
网站建设 2026/1/27 11:09:59

快速掌握AGEIPort:企业级数据交换的终极解决方案

快速掌握AGEIPort&#xff1a;企业级数据交换的终极解决方案 【免费下载链接】AGEIPort 项目地址: https://gitcode.com/gh_mirrors/ag/AGEIPort 想要高效处理海量数据导入导出&#xff1f;AGEIPort框架就是你的最佳选择&#xff01;作为阿里巴巴内部孵化的高性能数据交…

作者头像 李华
网站建设 2026/1/15 18:14:52

litemall开源电商系统:快速搭建多端商城的终极解决方案

litemall开源电商系统&#xff1a;快速搭建多端商城的终极解决方案 【免费下载链接】litemall linlinjava/litemall: LiTmall 是一个基于Spring Boot MyBatis的轻量级Java商城系统&#xff0c;适合中小型电商项目作为基础框架&#xff0c;便于快速搭建电子商务平台。 项目地…

作者头像 李华
网站建设 2026/1/24 11:29:31

计算机毕业设计springboot高校智能排课系统 基于SpringBoot的高校课程智能编排平台 高校教学资源自动化调度系统的设计与实现

计算机毕业设计springboot高校智能排课系统o0fdy267 &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。 高校扩招后&#xff0c;课程门类、教学班型、教室资源呈几何级增长&#xf…

作者头像 李华
网站建设 2026/1/18 22:11:22

EmotiVoice开源社区活跃度分析:为何开发者纷纷转向此TTS引擎?

EmotiVoice开源社区活跃度分析&#xff1a;为何开发者纷纷转向此TTS引擎&#xff1f; 在虚拟主播的一句“谢谢老板送的火箭”中&#xff0c;语气从平静瞬间转为雀跃&#xff1b;在游戏中NPC面对玩家挑衅时&#xff0c;声音带着压抑的愤怒与颤抖&#xff1b;而在有声书里&#x…

作者头像 李华