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

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

Vue-Ant Design Vue-普通及自定義校驗實例

瀏覽:102日期:2022-11-12 17:29:55

這段時間在使用Ant Design Vue進行項目的前端部分開發,進行一個記錄,分享…

Ant Design Vue

Ant Design Vue是 Ant Design 3.X 的 Vue 實現,開發和服務于企業級后臺產品。在GitHub上可以找到幾個Ant Design的Vue組件。不過相比較而言,Ant Design Vue更勝一籌。Ant Design Vue共享Ant Design of React設計工具體系,實現了所有Ant Design of React的組件,支持現代瀏覽器和 IE9 及以上(需要 polyfills)。可以讓熟悉Ant Design的在使用Vue時,很容易的上手。

nodejs,npm包括Ant Design Vue安裝什么的就不說了,可以百度,之后有時間我會寫一篇關于這一套東西的安裝教程,關于Ant Design Vue,可以直接查看官方文檔:https://vue.ant.design

下面說一下關于Ant Design Vue中的表單校驗及自定義校驗。

自定義校驗

先給一張Ant Design Vue得form表單中不同類型的校驗場景圖,看看是否有你需要的:

Vue-Ant Design Vue-普通及自定義校驗實例

官方提供了 validateStatus, help ,hasFeedback 等屬性,你可以不需要使用 Form.create 和 getFieldDecorator,自己定義校驗的時機和內容。

validateStatus: 校驗狀態,可選 ‘success’, ‘warning’, ‘error’, ‘validating’。

hasFeedback:用于給輸入框添加反饋圖標。

help:設置校驗文案。

說明一點: 當你使用Ant Design Vue的使用,經過 Form.create 包裝的組件將會自帶 this.form 屬性

this.form 提供的 關于校驗的API如下 :

方法 說明 類型 validateFields 校驗并獲取一組輸入域的值與 Error,若 fieldNames 參數為空,則校驗全部組件 Function([fieldNames: string[]], [options: object], callback: Function(errors, values))

然后看下Form.Item的參數設置(主要看關于校驗的):

參數 說明 類型 默認值 extra 額外的提示信息,和 help 類似,當需要錯誤信息和提示文案同時出現時,可以使用這個。 string/slot hasFeedback 配合 validateStatus 屬性使用,展示校驗狀態圖標,建議只配合 Input 組件使用。 boolean false help 提示信息,如不設置,則會根據校驗規則自動生成 string/slot validateStatus 校驗狀態,如不設置,則會根據校驗規則自動生成,可選:‘success’ ‘warning’ ‘error’ ‘validating’ string

最后是校驗規則設置:

Vue-Ant Design Vue-普通及自定義校驗實例

相關的api及參數設置介紹完樂,下面上實例

實例

寫一個簡單的例子

form表單代碼:

<a-form @submit='handleSubmit' :form='form'><a-form-itemlabel='密碼':labelCol='{span: 5}':wrapperCol='{span: 19}'class='stepFormText'hasFeedback><a-inputv-decorator='[’password’,{rules: [{ required: true, message: ’請輸入密碼’ },{validator: handlePass}]}]'name='password'/></a-form-item><a-form-itemlabel='確認密碼':labelCol='{span: 5}':wrapperCol='{span: 19}'class='stepFormText'hasFeedback><a-inputv-decorator='[’confirm_password’,{rules: [{ required: true, message: ’請輸入確認密碼’ },{validator: handleConfirmPass}]}]'name='confirm_password'/></a-form-item><a-form-item :wrapperCol='{span: 19, offset: 5}'><a-button :loading='loading' type='primary' htmlType='submit'>提交</a-button></a-form-item></a-form>

進行一下說明,以確認密碼的校驗為例:

<a-input v-decorator='[ ’confirm_password’, {rules: [{ required: true, message: ’請輸入確認密碼’ },{validator: handleConfirmPass}]} ]' name='confirm_password' />

rules中為一個數組,每一項就是一個校驗規則,第一項規則容易理解,但是{validator: handleConfirmPass}是什么的,我們通過上面的校驗規則設置(紅框處)可以發現,這是當你設置自定義校驗的時候需要這么寫。注意:callback 必須被調用。

handleConfirmPass 其實就是自定義校驗的校驗方法。

上js代碼:

<script>export default { data () { return { labelCol: { xs: { span: 24 }, sm: { span: 7 } }, wrapperCol: { xs: { span: 24 }, sm: { span: 13 } }, password: ’’, // form form: this.$form.createForm(this) } }, methods: { handlePass(rule,value,callback){ this.password = value callback() }, handleConfirmPass(rule,value, callback){ if (this.password && this.password !== value) { callback(’兩次密碼輸入不一致!’) } // Note: 必須總是返回一個 callback,否則 validateFieldsAndScroll 無法響應 callback() }, handleSubmit (e) { e.preventDefault() this.form.validateFields((err, values) => { if (!err) { console.log(values) } }) } }}</script>

效果圖如下:

1.空值提交

Vue-Ant Design Vue-普通及自定義校驗實例

2.自定義校驗規則生效

Vue-Ant Design Vue-普通及自定義校驗實例

好了,這就是關于Ant Design Vue的普通及自定義校驗的簡單使用。

補充知識:關于 Ant Design of Vue 表單動態賦值 觸發驗證 問題

關于 Ant Design of Vue 表單動態賦值 觸發驗證

Ant Design of Vue 中 給表單動態賦值 使用 setFieldsValue 方法 這一點 之前已經介紹過了 ,不了解的可以查找我之前的博客 上面有詳細的介紹使用方法

但使用 該方法可能會出現 一個問題 例如本人使用的下拉框觸發 change 事件的時候 給表單 動態賦值

這個時候遇到一個問題 就是 觸發的同時也觸發了表單驗證 解決的方法是 在setFieldsValue 方法的外面

加上 this.$nextTick(() => {}) 方法 如圖所示

Vue-Ant Design Vue-普通及自定義校驗實例

輕松解決 問題 。

以上這篇Vue-Ant Design Vue-普通及自定義校驗實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 下水道疏通_管道疏通_马桶疏通_附近疏通电话- 立刻通 | sus630/303cu不锈钢棒,440C/430F/17-4ph不锈钢研磨棒-江苏德镍金属科技有限公司 | 广州昊至泉水上乐园设备有限公司 | elisa试剂盒价格-酶联免疫试剂盒-猪elisa试剂盒-上海恒远生物科技有限公司 | 重庆小面培训_重庆小面技术培训学习班哪家好【终身免费复学】 | 山东PE给水管厂家,山东双壁波纹管,山东钢带增强波纹管,山东PE穿线管,山东PE农田灌溉管,山东MPP电力保护套管-山东德诺塑业有限公司 | 精密冲床,高速冲床等冲压设备生产商-常州晋志德压力机厂 | 紫外可见光分光度计-紫外分光度计-分光光度仪-屹谱仪器制造(上海)有限公司 | 铸铁平台,大理石平台专业生产厂家_河北-北重机械 | 济南轻型钢结构/济南铁艺护栏/济南铁艺大门-济南燕翔铁艺制品有限公司 | 福建珂朗雅装饰材料有限公司「官方网站」 | 土壤养分检测仪_肥料养分检测仪_土壤水分检测仪-山东莱恩德仪器 大型多片锯,圆木多片锯,方木多片锯,板材多片锯-祥富机械有限公司 | 北京翻译公司_同传翻译_字幕翻译_合同翻译_英语陪同翻译_影视翻译_翻译盖章-译铭信息 | 迪威娱乐|迪威娱乐客服|18183620002 | 偏心半球阀-电动偏心半球阀-调流调压阀-旋球阀-上欧阀门有限公司 | 冷水机-冰水机-冷冻机-冷风机-本森智能装备(深圳)有限公司 | 辐射色度计-字符亮度测试-反射式膜厚仪-苏州瑞格谱光电科技有限公司 | 众品地板网-地板品牌招商_地板装修设计_地板门户的首选网络媒体。 | 根系分析仪,大米外观品质检测仪,考种仪,藻类鉴定计数仪,叶面积仪,菌落计数仪,抑菌圈测量仪,抗生素效价测定仪,植物表型仪,冠层分析仪-杭州万深检测仪器网 | 混合气体腐蚀试验箱_盐雾/硫化氢/气体腐蚀试验箱厂家-北京中科博达 | 户外健身路径_小区健身器材_室外健身器材厂家_价格-浩然体育 | 蔡司三坐标-影像测量机-3D扫描仪-蔡司显微镜-扫描电镜-工业CT-ZEISS授权代理商三本工业测量 | 沥青灌缝机_路面灌缝机_道路灌缝机_沥青灌缝机厂家_济宁萨奥机械有限公司 | 美国HASKEL增压泵-伊莱科elettrotec流量开关-上海方未机械设备有限公司 | DDoS安全防护官网-领先的DDoS安全防护服务商| 污水处理设备维修_污水处理工程改造_机械格栅_过滤设备_气浮设备_刮吸泥机_污泥浓缩罐_污水处理设备_污水处理工程-北京龙泉新禹科技有限公司 | 震动筛选机|震动分筛机|筛粉机|振筛机|振荡筛-振动筛分设备专业生产厂家高服机械 | 膏方加工_丸剂贴牌_膏滋代加工_湖北康瑞生物科技有限公司 | ETFE膜结构_PTFE膜结构_空间钢结构_膜结构_张拉膜_浙江萬豪空间结构集团有限公司 | 合金ICP光谱仪(磁性材料,工业废水)-百科 | 矿用履带式平板车|探水钻机|气动架柱式钻机|架柱式液压回转钻机|履带式钻机-启睿探水钻机厂家 | 合金耐磨锤头_破碎机锤头_郑州市德勤建材有限公司 | 陶瓷加热器,履带式加热器-吴江市兴达电热设备厂 | 轴承振动测量仪电箱-轴承测振动仪器-测试仪厂家-杭州居易电气 | 六维力传感器_三维力传感器_二维力传感器-南京神源生智能科技有限公司 | 活性炭-果壳木质煤质柱状粉状蜂窝活性炭厂家价格多少钱 | 热熔胶网膜|pes热熔网膜价格|eva热熔胶膜|热熔胶膜|tpu热熔胶膜厂家-苏州惠洋胶粘制品有限公司 | 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 | 世纪豪门官网 世纪豪门集成吊顶加盟电话 世纪豪门售后电话 | 查分易-成绩发送平台官网 | 青岛侦探_青岛侦探事务所_青岛劝退小三_青岛调查出轨取证公司_青岛婚外情取证-青岛探真调查事务所 |