欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ElementPlus表單rules校驗的方法步驟

 更新時間:2023年04月13日 14:34:04   作者:我是哎呀呀  
相信大家經(jīng)常都會遇到要處理表單驗證的環(huán)節(jié),而我在最近的項目中也遇到需要做表單驗證的業(yè)務(wù),下面這篇文章主要給大家介紹了關(guān)于ElementPlus表單rules校驗的方法步驟,需要的朋友可以參考下

前言

element中Form表單驗證有兩種方式,一種是寫在data中,另外一種是直接在表單中標簽里面添加即可。

方法步驟

1. 給表單添加 :rules=“rules”,指出表單驗證

2.給表單中的標簽添加屬性 prop=“名稱”,詳細見下圖:

3.驗證規(guī)則的設(shè)置,可以直接寫在data區(qū)域中,也可以直接寫在標簽中

寫在data中

      rules:{
        size: [ {required: true,trigger: 'blur', message: "尺寸必須填寫" },
                 {type:'number',message: "尺寸必須為數(shù)字"},
        ],
        modelCode: [ {required: true,trigger: 'blur', message: "模具代碼必須填寫" }
        ],
        exitStatus: [ {required: true,trigger: 'blur', message: "出口狀態(tài)必須填寫" }
        ],
      },

required是必填,trigger: 'blur'是鼠標光標消失,message是條件不滿足時提示的消息,type:'number'表示該輸入框中數(shù)據(jù)只能為數(shù)字,可以定義max,min等等一系列屬性,具體請查看element的官方文檔: 表單驗證高級用法。具體的代碼位置如下圖:

驗證寫在標簽中

我們直接在對于的標簽里面寫rules就好了,里面的屬性和上面的是一樣的,這個時候我們data中就不用再寫rules了.

:rules="[{required: true, trigger: 'blur', message: '尺寸必須填寫'},{type: 'number', message: '尺寸必須為數(shù)字'}]"

這個時候我們就已經(jīng)實現(xiàn)了表單的驗證了,如果不滿足條件,對于的標簽框下就會出現(xiàn)自己定義的message信息。當然,我們也可以針對針對自己定義的正則表達式規(guī)則去進行校驗。

        phone: [ {required: true, trigger: "blur", message: "手機號格式不正確",
                  pattern: /^((0\d{2,3}-\d{7,8})|(1[34578]\d{9}))$/,} ]

我們只需要添加pattren屬性,并且規(guī)定他的正則表達式即可,注意正則表達式不需要雙引號包裹.

想查找正則表達式可以查看以下網(wǎng)址:

表單驗證不通過無法提交

我們設(shè)置了表單驗證之后,我們肯定是想這個表單在驗證不通過的情況下是無法進行后續(xù)操作的,比如將數(shù)據(jù)傳給后端進行數(shù)據(jù)處理等。所以,我們還需要設(shè)置表單驗證不通過后,無法進行后續(xù)操作。

1.我們需要給表單添加一個ref指向,ref=“名稱”

2.添加驗證不通過的處理。

// 這個form就是上面自己定義的名稱
      this.$refs['form'].validate((valid) => {
        if (valid) { //如果驗證通過,可以在后面自己加上else驗證不通過
                  //自己的邏輯代碼
          })
        }

因為我們的表單驗證大部分都是在數(shù)據(jù)的新增和修改操作時對數(shù)據(jù)進行校驗的,當我們希望他驗證通過后才進行數(shù)據(jù)提交或者其他操作,就可以將邏輯代碼寫在我們的if(valid){}中,這樣就達到了我們想要的效果,例如我的寫法是:

取消驗證緩存

當我們給表單設(shè)置了驗證消息后,通常會有緩存的存在,例如我的表單是設(shè)置再彈出框中的,當我的表單部分標簽不符合規(guī)則時就會給出提示,但是我直接關(guān)閉該彈出頁面然后再打開時,不符合驗證規(guī)則的提示還是會存在,如下圖:這肯定是我不想要的,我想他打開的時候就是默認的狀態(tài),不存在這些提示信息。

所以我就需要清除這些緩存,再打開頁面的時候,將緩存清除。這樣就i可以解決問題了。

	  //添加if判斷是為了防止當表單沒有驗證信息緩存的時候,這個時候直接調(diào)用恢復(fù)方法頁面的控制臺會提示錯誤,
	  //強迫癥犯了,就加一個判斷,有才清除,沒有就不清除
      if (this.$refs['form'] != undefined) {
        this.$refs['form'].resetFields(); 
      }

動態(tài)添加表單標簽時添加驗證

當我們需要再表單中允許動態(tài)的添加和刪除某一個固定的表單信息時,我的實現(xiàn)方式是使用for循環(huán),對一個數(shù)組進行循環(huán),新增和刪除就是直接對這個數(shù)組進行push和splice操作,添加和和刪除對象,因為vue雙向綁定機制,會自動重新渲染。實現(xiàn)表單驗證信息很簡單,我們只需要再表單上添加prop屬性,然后添加rules驗證就好了。如圖:

:prop="'ThreadBodyList.' + index + '.value'"
:rules="{required: true, trigger: 'blur',message: '線體不能為空',}"

請萬分注意prop屬性的格式,一定要按照這個格式來寫,否則會無法綁定到值。

格式: 被進行循環(huán)的數(shù)組(我的是ThreadBodyList) + ‘.’ + index(循環(huán)的下標) + ‘.’ + value。

需要注意第一個是被循環(huán)的數(shù)組,其他直接復(fù)制即可,所有的屬性都是v-bind,一定要加上 :,當時我就是因為少了一個冒號,怎么樣都實現(xiàn)不了,還不報錯,搞我一上午,萬分注意。

閑談

因為自己最開始想要給表單做驗證的時候,直接看element提供的一個示例代碼,然后再去百度,發(fā)現(xiàn)有不同的寫法,就決定記下來。然后自己當時還遇到了一些其他的問題,比如正則表達式驗證不生效呀,如何驗證不通過不提交等,然后百度。現(xiàn)在決定記下來免得我下一次忘了,就可以直接看這個博客就好了。當然如果你在看的時候發(fā)現(xiàn)我哪里寫的有問題的話,請指出我改正,謝謝。

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

相關(guān)文章

  • Vue3使用中這些坑你都踩過嗎

    Vue3使用中這些坑你都踩過嗎

    Vue3?目前已經(jīng)趨于穩(wěn)定,不少代碼庫都已經(jīng)開始使用它,很多項目未來也必然要遷移至Vue3,本文記錄了使用Vue3時遇到的一些問題,希望能對大家有所幫助
    2023-09-09
  • vue封裝一個彈幕組件詳解

    vue封裝一個彈幕組件詳解

    這篇文章主要介紹了vue封裝一個彈幕組件詳解,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙可以參考一下
    2022-08-08
  • 深入探討Vue計算屬性與監(jiān)聽器的區(qū)別和用途

    深入探討Vue計算屬性與監(jiān)聽器的區(qū)別和用途

    在Vue的開發(fā)中,計算屬性(Computed Properties)和監(jiān)聽器(Watchers)是兩種非常重要的概念,它們都用于響應(yīng)式地處理數(shù)據(jù)變化,本文將帶你深入了解計算屬性和監(jiān)聽器的區(qū)別,以及在何時使用它們,感興趣的朋友可以參考下
    2023-09-09
  • Vue 實時監(jiān)聽窗口變化 windowresize的兩種方法

    Vue 實時監(jiān)聽窗口變化 windowresize的兩種方法

    這篇文章主要介紹了Vue 實時監(jiān)聽窗口變化 windowresize的兩種方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-11-11
  • 一文帶你了解Vue數(shù)組的變異方法

    一文帶你了解Vue數(shù)組的變異方法

    Vue框架提供了一些便捷的數(shù)組變異方法,包括push、pop、shift、unshift、splice、sort和reverse等,Vue的數(shù)組變異方法可以自動觸發(fā)DOM更新,本文就詳細帶大家了解一下Vue.js數(shù)組的變異方法
    2023-06-06
  • vue實現(xiàn)滑動超出指定距離回頂部功能

    vue實現(xiàn)滑動超出指定距離回頂部功能

    這篇文章主要為大家詳細介紹了vue實現(xiàn)滑動超出指定距離回頂部功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • 使用Vue.set()方法實現(xiàn)響應(yīng)式修改數(shù)組數(shù)據(jù)步驟

    使用Vue.set()方法實現(xiàn)響應(yīng)式修改數(shù)組數(shù)據(jù)步驟

    今天小編就為大家分享一篇使用Vue.set()方法實現(xiàn)響應(yīng)式修改數(shù)組數(shù)據(jù)步驟,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 詳解vue-flickity的fullScreen功能實現(xiàn)

    詳解vue-flickity的fullScreen功能實現(xiàn)

    這篇文章主要介紹了詳解vue-flickity的fullScreen功能實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • vue日歷/日程提醒/html5本地緩存功能

    vue日歷/日程提醒/html5本地緩存功能

    這篇文章主要介紹了vue日歷/日程提醒/html5本地緩存功能,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • 淺談Vue數(shù)據(jù)綁定的原理

    淺談Vue數(shù)據(jù)綁定的原理

    本篇文章主要介紹了淺談Vue數(shù)據(jù)綁定的原理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01

最新評論