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

vue2使用elform的rules校驗(yàn)的示例詳解

 更新時(shí)間:2025年07月04日 09:27:01   作者:攻城獅-申  
這篇文章主要介紹了vue2使用elform的rules校驗(yàn)的示例詳解,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

在使用vue2開(kāi)發(fā)項(xiàng)目的時(shí)候使用element組件的el-form大多數(shù)情況都需要用到必填項(xiàng)校驗(yàn)
舉個(gè)栗子:

<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
  <el-form-item label="活動(dòng)名稱" prop="name">
    <el-input v-model="ruleForm.name"></el-input>
  </el-form-item>
  <el-form-item label="活動(dòng)區(qū)域" prop="region">
    <el-select v-model="ruleForm.region" placeholder="請(qǐng)選擇活動(dòng)區(qū)域">
      <el-option label="區(qū)域一" value="shanghai"></el-option>
      <el-option label="區(qū)域二" value="beijing"></el-option>
    </el-select>
  </el-form-item>
  <el-form-item>
    <el-button type="primary" @click="submitForm('ruleForm')">立即創(chuàng)建</el-button>
    <el-button @click="resetForm('ruleForm')">重置</el-button>
  </el-form-item>
</el-form>
<script>
  export default {
    data() {
      return {
        ruleForm: {
          name: '',
          region: '',
        },
        rules: {
          name: [
            { required: true, message: '請(qǐng)輸入活動(dòng)名稱', trigger: 'blur' },
            { min: 3, max: 5, message: '長(zhǎng)度在 3 到 5 個(gè)字符', trigger: 'blur' }
          ],
          region: [
            { required: true, message: '請(qǐng)選擇活動(dòng)區(qū)域', trigger: 'change' }
          ],
        }
      };
    },
    methods: {
      submitForm(ruleForm) {
        this.$refs['ruleForm'].validate((valid) => {
          if (valid) {
            alert('submit!');
          } else {
            console.log('error submit!!');
            return false;
          }
        });
      },
      resetForm(ruleForm) {
        this.$refs[ruleForm].resetFields();
      }
    }
  }
</script>

這里我們的表單里有‘活動(dòng)名稱(輸入框)’和‘活動(dòng)區(qū)域(下拉框)’兩個(gè)選項(xiàng),我們?cè)?lt;el-form>這里寫了

:rules="rules"

這就代表我們這個(gè)el-form表單的校驗(yàn)是根據(jù)rules來(lái)的,而在下面<el-form-item>里我們寫了'prop="xxx"',這里的屬性為rules里需要校驗(yàn)的字段名,也就是data里定義的

rules: {
          name: [
            { required: true, message: '請(qǐng)輸入活動(dòng)名稱', trigger: 'blur' },
            { min: 3, max: 5, message: '長(zhǎng)度在 3 到 5 個(gè)字符', trigger: 'blur' }
          ],
          region: [
            { required: true, message: '請(qǐng)選擇活動(dòng)區(qū)域', trigger: 'change' }
          ],
        }

*這里需要注意的是我們prop里的字段和rules里的字段名一定要對(duì)應(yīng)上,這樣el-form表單的校驗(yàn)才會(huì)生效

然后我們?cè)邳c(diǎn)擊確定的時(shí)候調(diào)方法進(jìn)行校驗(yàn)即可

this.$refs['ruleForm'].validate((valid) => {
          if (valid) {
            alert('submit!');
          } else {
            console.log('error submit!!');
            return false;
          }
        });

這里的[ruleForm]要跟上面el-form表單的ref的命名保持一致

更新:

如果遇到需要?jiǎng)討B(tài)加校驗(yàn)
我們只需要在el-form-item這里加上

:rules="定義的變量 ? rules.name : []"

像這樣

  <el-form-item label="活動(dòng)名稱" prop="name"
    :rules="定義的變量 ? rules.name: []">
    <el-input v-model="ruleForm.name"></el-input>
  </el-form-item>

這個(gè)定義的變量是用來(lái)動(dòng)態(tài)判斷是否需要加校驗(yàn)的,這個(gè)值你只需要放在你需要判斷是否需要加校驗(yàn)的地方就行了

*這里有個(gè)點(diǎn)需要注意,單獨(dú)加的校驗(yàn)有可能會(huì)在你輸入/選擇選項(xiàng)之后還是提示校驗(yàn)未通過(guò)

這個(gè)時(shí)候我們需要在輸入框/下拉框的change事件里再單獨(dú)執(zhí)行一下校驗(yàn)就可以了,比如像這樣:

change方法名() {
            this.$refs.ruleForm.validateField('name'); // 需要判斷的那個(gè)選項(xiàng)的prop,要對(duì)應(yīng)rules里定義的值
        },

這樣就實(shí)現(xiàn)了對(duì)一個(gè)選項(xiàng)動(dòng)態(tài)加判斷校驗(yàn)

附加element的官網(wǎng)地址:Element - The world's most popular Vue UI framework

到此這篇關(guān)于關(guān)于vue2使用elform的rules校驗(yàn)的文章就介紹到這了,更多相關(guān)vue2 elform rules校驗(yàn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue 3.0x中的Suspense和異步組件詳解

    Vue 3.0x中的Suspense和異步組件詳解

    這篇文章主要介紹了Vue 3.0x中的Suspense和異步組件,我們將討論新的defineAsyncComponent函數(shù),以及如何利用Suspense組件來(lái)更好地處理異步組件的加載和顯示,需要的朋友可以參考下
    2023-08-08
  • vue3中使用print-js組件實(shí)現(xiàn)打印操作步驟

    vue3中使用print-js組件實(shí)現(xiàn)打印操作步驟

    文章介紹了在Vue?3中使用print-js組件實(shí)現(xiàn)打印操作的步驟,包括安裝依賴、創(chuàng)建打印組件和處理打印預(yù)覽界面,文章還提到打印預(yù)覽界面的樣式調(diào)整對(duì)打印效果的影響,并展示了HTML展示和打印預(yù)覽效果,最后,文章鼓勵(lì)讀者繼續(xù)瀏覽相關(guān)文章并支持腳本之家
    2025-02-02
  • vue3.0 加載json的方法(非ajax)

    vue3.0 加載json的方法(非ajax)

    這篇文章主要介紹了vue3.0 加載json的方法(非ajax),幫助大家更好的理解和學(xué)習(xí)vue,感興趣的朋友可以了解下
    2020-10-10
  • Vuex中mutations與actions的區(qū)別詳解

    Vuex中mutations與actions的區(qū)別詳解

    下面小編就為大家分享一篇Vuex中mutations與actions的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • 詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸

    詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸

    本篇文章主要介紹了詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • vue與axios上傳視頻并顯示上傳進(jìn)度情況

    vue與axios上傳視頻并顯示上傳進(jìn)度情況

    本文講述了項(xiàng)目中實(shí)現(xiàn)上傳視頻并顯示上傳進(jìn)度的功能,首先使用axios庫(kù)進(jìn)行單文件引入,未進(jìn)行封裝,通過(guò)element組件庫(kù)實(shí)現(xiàn)選擇文件上傳,并打印選擇文件的信息,上傳完成后,可以在展示區(qū)域顯示上傳的視頻,鼠標(biāo)移入播放區(qū)域時(shí)會(huì)有相應(yīng)的效果
    2026-02-02
  • vue2從數(shù)據(jù)變化到視圖變化之nextTick使用詳解

    vue2從數(shù)據(jù)變化到視圖變化之nextTick使用詳解

    這篇文章主要為大家介紹了vue2從數(shù)據(jù)變化到視圖變化之nextTick使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Vue3引入SVG圖標(biāo)的流程步驟

    Vue3引入SVG圖標(biāo)的流程步驟

    我們?cè)陂_(kāi)發(fā) Vue 項(xiàng)目的時(shí)候會(huì)使用一些前端組件庫(kù),例如 Element、Ant Design 等,這些組件庫(kù)雖然方便,但是也有一些缺點(diǎn),比如內(nèi)置的圖標(biāo)太少,例如我們開(kāi)發(fā)醫(yī)療、財(cái)務(wù)、工程等一些前端項(xiàng)目,內(nèi)置的圖標(biāo)不能滿足我們的需求,所以我們常常在Vue項(xiàng)目中引入SVG圖標(biāo)
    2024-09-09
  • 源碼分析Vue.js的監(jiān)聽(tīng)實(shí)現(xiàn)教程

    源碼分析Vue.js的監(jiān)聽(tīng)實(shí)現(xiàn)教程

    這篇文章主要通過(guò)源碼分析介紹了Vue.js的監(jiān)聽(tīng)實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-04-04
  • Vue.js計(jì)算機(jī)屬性computed和methods方法詳解

    Vue.js計(jì)算機(jī)屬性computed和methods方法詳解

    這篇文章主要為大家詳細(xì)介紹了Vue.js計(jì)算機(jī)屬性computed和methods方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10

最新評(píng)論

神池县| 玉环县| 库车县| 达孜县| 沛县| 临沭县| 健康| 绍兴市| 泗阳县| 施秉县| 岗巴县| 习水县| 洛扎县| 乌苏市| 齐河县| 和龙市| 涟水县| 五峰| 贵定县| 泸定县| 沅江市| 长寿区| 临清市| 额济纳旗| 柳林县| 屏东县| 娄烦县| 广宗县| 东辽县| 陇南市| 博乐市| 鹤峰县| 鄯善县| 互助| 江安县| 伊金霍洛旗| 昌平区| 彭州市| 清徐县| 鄄城县| 红河县|