vue elementui el-form rules動(dòng)態(tài)驗(yàn)證的實(shí)例代碼詳解
一、介紹
簡(jiǎn)介:在使用elementUI el-form 中,對(duì)于業(yè)務(wù)不同的時(shí)候可能會(huì)產(chǎn)生不同表單結(jié)構(gòu),但是都是存在同一個(gè)表單控件el-form中。
圖片介紹:
1、在用戶選擇單選或多選時(shí)會(huì)有A,B,C,D,E五個(gè)選項(xiàng)

2、在用戶選擇簡(jiǎn)答題時(shí)只會(huì)題干,答案以及解析選項(xiàng)(主要是通過(guò)v-if來(lái)進(jìn)行判斷)

問(wèn)題引入:當(dāng)用戶選擇不同的題庫(kù)時(shí)會(huì)產(chǎn)生不同的form表單選項(xiàng),這個(gè)時(shí)候在進(jìn)行表單提交驗(yàn)證的時(shí)候就需要根據(jù)不同試題類型進(jìn)行判斷,這個(gè)時(shí)候就需要兩個(gè)rules來(lái)動(dòng)態(tài)進(jìn)行表單校驗(yàn)。
解決方法:在頁(yè)面加載的時(shí)候在computed方法中進(jìn)行動(dòng)態(tài)判斷直接返回賦值。
代碼介紹:
// elementui信息
<el-form :model="addQueTable" ref="addQueTable" :rules="addQueRulesList">
<el-form>
// data中定義rules
updateQusRulesSel:[];
updateQusRules:[];
// computed方法
computed: {
// this.updateQusTable.showSelect自己定義的標(biāo)識(shí)
updateQusRulesList: function() {
if (this.updateQusTable.showSelect) {
return this.updateQusRulesSel;
} else {
return this.updateQusRules;
}
}
總結(jié):在computed中進(jìn)行值綁定,當(dāng)該表單顯示的時(shí)候就會(huì)觸發(fā)(一開始是隱藏的),如果一開始頁(yè)面加載的時(shí)候就觸發(fā)會(huì)無(wú)法進(jìn)行值判斷,從而報(bào)錯(cuò)。其實(shí)能解決問(wèn)題,通過(guò)該種方法。
二、最簡(jiǎn)單解決方法
在el-form中定義的rules檢驗(yàn)字段,如果你的rules中有字段通過(guò)v-if進(jìn)行隱藏,rules是不會(huì)對(duì)隱藏的字段選項(xiàng)進(jìn)行判斷,只要定義一個(gè)完整的rules就行,v-if隱藏的部分不會(huì)進(jìn)入校驗(yàn)方法中。
把簡(jiǎn)單的問(wèn)題復(fù)雜化了?。。。。?/p>
感謝該用戶:

總結(jié)
以上所述是小編給大家介紹的vue elementui el-form rules動(dòng)態(tài)驗(yàn)證的實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Vue解析剪切板圖片并實(shí)現(xiàn)發(fā)送功能
這篇文章主要介紹了Vue解析剪切板圖片并實(shí)現(xiàn)發(fā)送功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02
vue中使用swiper,左右箭頭點(diǎn)擊沒有效果問(wèn)題及解決
這篇文章主要介紹了vue中使用swiper,左右箭頭點(diǎn)擊沒有效果問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
vue實(shí)現(xiàn)大文件切片斷點(diǎn)續(xù)傳
上傳文件,基本上用了input框就可以解決,但大文件應(yīng)該怎樣上傳呢,一次性上傳明顯不現(xiàn)實(shí),因?yàn)槊看我粩嗑W(wǎng),那就會(huì)從頭開始上傳,所以切片勢(shì)在必行,關(guān)鍵就是如何切,怎么保障文件數(shù)據(jù)不會(huì)丟失,同時(shí)優(yōu)化上傳保障機(jī)制,本文就來(lái)給大家講講如何上傳大文件2023-07-07
詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸
本篇文章主要介紹了詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06
vue 實(shí)現(xiàn)數(shù)字滾動(dòng)增加效果的實(shí)例代碼
最近做了個(gè)項(xiàng)目需要做數(shù)字滾動(dòng)增加的效果,剛開始接到這個(gè)項(xiàng)目還真是懵了,后來(lái)發(fā)現(xiàn)實(shí)現(xiàn)代碼很簡(jiǎn)單的,下面小編給大家?guī)?lái)了vue 實(shí)現(xiàn)數(shù)字滾動(dòng)增加效果的實(shí)例代碼,需要的朋友參考下吧2018-07-07
Vue項(xiàng)目打包部署到apache服務(wù)器的方法步驟
這篇文章主要介紹了Vue項(xiàng)目打包部署到apache服務(wù)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
解決vue3項(xiàng)目打包后部署后某些靜態(tài)資源圖片不加載問(wèn)題
這篇文章主要給大家介紹了如何解決vue3項(xiàng)目打包后部署后某些靜態(tài)資源圖片不加載問(wèn)題,文中通過(guò)圖文結(jié)合的方式講解的非常詳細(xì),有需要的朋友可以參考下2024-05-05
在vue中實(shí)現(xiàn)禁止回退上一步,路由不存歷史記錄
這篇文章主要介紹了在vue中實(shí)現(xiàn)禁止回退上一步,路由不存歷史記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07

