电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Vue如何使用ElementUI對表單元素進行自定義校驗及踩坑

瀏覽:129日期:2022-06-01 16:06:13
目錄
  • 前言
  • 非空校驗
  • 自定義校驗
  • 定義自定義校驗函數
  • 使用自定義校驗函數
  • 總結

前言

在使用ElementUI的表單元素時候,除了做一些簡單的非空處理校驗,在一些特殊的場合,還需要我們做一些自定義校驗。

其實ElementUI不僅提供了基本的非空校驗,也對我們提供了自定義檢驗。

在使用的時候還是遇到了一些坑,下面簡單的總結分享下

非空校驗

知道自定義校驗之前,需要知道基本的非空校驗

如下圖,ElementUI已經幫助我們創建好了一個簡單的demo,我們直接拿來用即可。

這里我也是直接復制的demo,然后根據自己需求進行修改。

簡單的說下相關的一些地方吧

一個表單包含著很多頁面元素,根據自己的需求使用不同的組件去拼接即可:

表單的元素我們可以直接在data生成一個表單數據,把里面的屬性都放在數據里面,這樣可以直接把這個表單傳到后臺進行交互。不然一個一個傳也太麻煩了

然后就是檢驗(rules),這里一般做對表單元素校驗的處理

除了手機號,密碼,確認密碼這三項,我都是只做了最基本的非空校驗。

我們可以注意到,每一個表單元素都有一個紅色的星號,這就是必輸項的一個標識,我們主要通過這個屬性控制:

required: true

比如我現在把用戶名的required: true去掉

頁面上的非空校驗就沒了,所以不論你校驗寫的再好,不加這個屬性就等于沒用。

自定義校驗

我主要以兩個較為經典的例子舉例,一個是手機號的格式,一個是密碼和確認密碼的判斷是否相同

關于表單的自定義校驗ElementUI也給了demo,就是我的第二個例子

大家都知道,手機號都是有一定的規則的,不是只有11位數字就是這么簡單的,還要以固定格式開頭等。

定義自定義校驗函數

針對這種格式,我們就可以使用自定義校驗了,我們可以在data中定義自定義校驗:

可以理解成把它理解成一個變量,有著自定義的回調函數進行自定義錯誤提示

可以看到首先是判斷輸入的手機號是否為空,如果為空給出的提示是:請輸入手機號碼

如果輸入的手機號不為空,那么就通過正則表達式判斷是否合法,如果不合法的話,同樣給出對應的提示信息,這便是自定義校驗,根據自己的需求定義自己的規則。

 // 校驗手機號是否合法    var checkPhone = (rule, value, callback) => {		if (value === "") {			callback(new Error("請輸入手機號碼"))		} else if (!/^(13[0-9]|14[5|7]|15[0|1|2|3|4|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/.test(value)) {			callback(new Error("手機號格式有誤,請輸入正確的手機號碼"))		} else {			callback()		}	};

使用自定義校驗函數

使用起來也很簡單,在原有的表單校驗基礎上加上validator屬性,值就是定義自定義函數的變量名

注意:使用了自定義校驗函數之后,就不要在這里寫message提示信息了。直接在函數里面定義錯誤信息即可。

  phone: [ { required: true,validator: checkPhone, trigger: "blur" }],

兩次密碼是否相同這個demo直接拿著ElementUI給的demo即可。這里不再贅述

總結

通過表單自定義校驗,大大提高了靈活性和可控性。個人還是比較喜歡的

到此這篇關于Vue如何使用ElementUI對表單元素進行自定義校驗及踩坑的文章就介紹到這了,更多相關Vue用ElementUI對表單自定義校驗內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: JavaScript
主站蜘蛛池模板: 一路商机网-品牌招商加盟优选平台-加盟店排行榜平台 | 东莞工厂厂房装修_无尘车间施工_钢结构工程安装-广东集景建筑装饰设计工程有限公司 | 数控车床-立式加工中心-多功能机床-小型车床-山东临沂金星机床有限公司 | 好看的韩国漫画_韩漫在线免费阅读-汗汗漫画 | 东莞注册公司-代办营业执照-东莞公司注册代理记账-极刻财税 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 搪瓷反应釜厂家,淄博搪瓷反应釜-淄博卓耀 | 湖州织里童装_女童男童中大童装_款式多尺码全_织里儿童网【官网】-嘉兴嘉乐网络科技有限公司 | 密度电子天平-内校-外校电子天平-沈阳龙腾电子有限公司 | 扬尘监测_扬尘监测系统_带证扬尘监测设备 - 郑州港迪科技有限公司 | 沈阳庭院景观设计_私家花园_别墅庭院设计_阳台楼顶花园设计施工公司-【沈阳现代时园艺景观工程有限公司】 | 查分易-成绩发送平台官网 | 并离网逆变器_高频UPS电源定制_户用储能光伏逆变器厂家-深圳市索克新能源 | 精准猎取科技资讯,高效阅读科技新闻_科技猎 | 户外环保不锈钢垃圾桶_标识标牌制作_园林公园椅厂家_花箱定制-北京汇众环艺 | 北京公寓出租网-北京酒店式公寓出租平台 | 无机纤维喷涂棉-喷涂棉施工工程-山东华泉建筑工程有限公司▲ | 金联宇电缆总代理-金联宇集团-广东金联宇电缆实业有限公司 | 贴片电感_贴片功率电感_贴片绕线电感_深圳市百斯特电子有限公司 贴片电容代理-三星电容-村田电容-风华电容-国巨电容-深圳市昂洋科技有限公司 | 仿真茅草_人造茅草瓦价格_仿真茅草厂家_仿真茅草供应-深圳市科佰工贸有限公司 | HDPE土工膜,复合土工膜,防渗膜价格,土工膜厂家-山东新路通工程材料有限公司 | 根系分析仪,大米外观品质检测仪,考种仪,藻类鉴定计数仪,叶面积仪,菌落计数仪,抑菌圈测量仪,抗生素效价测定仪,植物表型仪,冠层分析仪-杭州万深检测仪器网 | 档案密集柜_手动密集柜_智能密集柜_内蒙古档案密集柜-盛隆柜业内蒙古密集柜直销中心 | 铝合金重力铸造_铝合金翻砂铸造_铝铸件厂家-东莞市铝得旺五金制品有限公司 | 吉林污水处理公司,长春工业污水处理设备,净水设备-长春易洁环保科技有限公司 | 齿式联轴器-弹性联轴器-联轴器厂家-江苏诺兴传动联轴器制造有限公司 | 北京征地律师,征地拆迁律师,专业拆迁律师,北京拆迁律师,征地纠纷律师,征地诉讼律师,征地拆迁补偿,拆迁律师 - 北京凯诺律师事务所 | 包头市鑫枫装饰有限公司| 防堵吹扫装置-防堵风压测量装置-电动操作显示器-兴洲仪器 | 灰板纸、灰底白、硬纸板等纸品生产商-金泊纸业| 北京翻译公司-专业合同翻译-医学标书翻译收费标准-慕迪灵 | 磁粉制动器|张力控制器|气胀轴|伺服纠偏控制器整套厂家--台灵机电官网 | 塑料检查井_双扣聚氯乙烯增强管_双壁波纹管-河南中盈塑料制品有限公司 | 泥沙分离_泥沙分离设备_泥砂分离机_洛阳隆中重工机械有限公司 | 工业淬火油烟净化器,北京油烟净化器厂家,热处理油烟净化器-北京众鑫百科 | 蓄电池回收,ups电池后备电源回收,铅酸蓄电池回收,机房电源回收-广州益夫铅酸电池回收公司 | 冷凝锅炉_燃气锅炉_工业燃气锅炉改造厂家-北京科诺锅炉 | 动环监控_机房环境监控_DCIM_机房漏水检测-斯特纽 | 超声波乳化机-超声波分散机|仪-超声波萃取仪-超声波均质机-精浩机械|首页 | 盘扣式脚手架-附着式升降脚手架-移动脚手架,专ye承包服务商 - 苏州安踏脚手架工程有限公司 | 华禹护栏|锌钢护栏_阳台护栏_护栏厂家-华禹专注阳台护栏、楼梯栏杆、百叶窗、空调架、基坑护栏、道路护栏等锌钢护栏产品的生产销售。 |