最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

v-if 導致 elementui 表單校驗失效問題解決方案

 更新時間:2024年01月26日 15:15:09   作者:Jiang_JY  
在使用 elementui 表單的過程中,某些表單項需要通過 v-if 來判斷是否展示,但是這些表單項出現(xiàn)了檢驗失效的問題,今天小編給大家介紹v-if 導致 elementui 表單校驗失效問題解決方案,感興趣的朋友一起看看吧

問題

在使用 elementui 表單的過程中,某些表單項需要通過 v-if 來判斷是否展示,但是這些表單項出現(xiàn)了檢驗失效的問題。

解決方法

1、給需要 v-if 判斷的表單項添加 key 值

<el-form ref="form" :model="form">
  <el-form-item 
    :key="0" 
    v-if="hasItem" 
    label="名稱" 
    prop="type">
    <el-input v-model="form.name"></el-input>
  </el-form-item>
  <el-form-item 
    :key="1" 
    v-if="hasItem" 
    label="類型" 
    prop="type">
    <el-input v-model="form.type"></el-input>
  </el-form-item>
</el-form>

2、將校驗規(guī)則直接綁定在 el-form-item 上

<el-form ref="form" :model="form">
  <el-form-item 
    :rules="{required: true, message:'請輸入名稱', trigger: 'change'}"
    v-if="hasItem" 
    label="名稱" 
    prop="name">
    <el-input v-model="form.name"></el-input>
  </el-form-item>
  <el-form-item 
    :rules="{required: true, message:'請輸入類型', trigger: 'change'}"
    v-if="hasItem" 
    label="類型" 
    prop="type">
    <el-input v-model="form.type"></el-input>
  </el-form-item>
</el-form>

3、v-show 代替 v-if

這種方法存在一個問題,就是如果 v-if 判斷的表單項中如果存在相同字段的項就會導致重復校驗的問題,所以這種方法需要在判斷的表單項字段都不相同的情況下使用。

<el-form ref="form" :model="form">
  <el-form-item 
    v-show="hasItem" 
    label="名稱" 
    prop="name">
    <el-input v-model="form.name"></el-input>
  </el-form-item>
  <el-form-item 
    v-show="hasItem" 
    label="類型" 
    prop="type">
    <el-input v-model="form.type"></el-input>
  </el-form-item>
</el-form>

4、使用自定義校驗規(guī)則

<el-form ref="form" :model="form">
  <el-form-item 
    :key="0" 
    v-if="hasItem" 
    label="名稱" 
    prop="name">
    <el-input v-model="form.name"></el-input>
  </el-form-item>
  <el-form-item 
    :key="1" 
    v-if="hasItem" 
    label="類型" 
    prop="type">
    <el-input v-model="form.type"></el-input>
  </el-form-item>
</el-form>
const checkName = (rule, value, callback) => {
	if (!value) {
       return callback(new Error('名稱不能為空'));
   }
}
data(){
	return{
		rules: {
   			name: [
            	{ validator: checkName , trigger: 'change' }
          	],
        }
	}
}

到此這篇關于v-if 導致 elementui 表單校驗失效問題解決的文章就介紹到這了,更多相關elementui 表單校驗失效內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

崇礼县| 兴安县| 娱乐| 色达县| 龙泉市| 巫溪县| 嵊州市| 上思县| 个旧市| 阿拉尔市| 宜黄县| 汨罗市| 怀来县| 吴桥县| 宝坻区| 顺义区| 承德市| 手机| 青河县| 鹤庆县| 渝北区| 萍乡市| 南充市| 武宁县| 呼伦贝尔市| 黔西县| 临邑县| 翼城县| 曲靖市| 奉新县| 进贤县| 商洛市| 安乡县| 宁河县| 那坡县| 惠州市| 霞浦县| 民和| 大埔区| 蓝田县| 延吉市|