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

element表單使用校驗之校驗失效問題詳解

 更新時間:2022年10月17日 16:38:16   作者:paidaboluo  
最近工作中遇到了element表單校驗失敗的情況,通過查找相關資料終于解決了,所以下面這篇文章主要給大家介紹了關于element表單使用校驗之校驗失效問題的相關資料,需要的朋友可以參考下

首先是html必須正確,直接看代碼示例:

<el-form ref="form" :model="form" :rules="rules" label-width="80px">
  <el-form-item label="名稱" prop="name">
    <el-input v-model="form.name"></el-input>
  </el-form-item>
  <el-form-item label="性別" prop="sex">
    <el-input v-model="form.sex"></el-input>
  </el-form-item>
  <el-form-item label="年齡" prop="age">
    <el-input v-model="form.age"></el-input>
  </el-form-item>
</el-form>

第一種可能的錯誤: 字段錯誤

其中的每個 el-form-item 標簽中,都有一個 prop ,其中的值是我們 rules 對象中的 某個 屬性。

然后我們 v-model 綁定的值也必須是 這個 屬性

比如我們的字段是 userName,我們的prop還是name時,校驗失效

  <el-form-item label="名稱" prop="name">
    <el-input v-model="form.userName"></el-input>
  </el-form-item>

再來看js中的代碼:

form: {
  name: undefined,
  sex: undefined,
  age: undefined
},
rules: {
    name: [
          { required: true, message: "用戶名稱不能為空", trigger: "blur" },
          { min: 2, max: 20, message: '用戶名稱長度必須介于 2 和 20 之間', trigger: 'blur' }
        ],
    sex: [
          { required: true, message: "性別不能為空", trigger: "blur" }
        ],
    age: [
          { required: true, message: "年齡不能為空", trigger: "blur" },
          { pattern: /^([0-9]|[1-9]\d|[1-9]\d\d)$/, message: '年齡介于 0-999 之間', trigger: 'blur' }
        ]
}

第二種:觸發(fā)校驗錯誤

rules 中 每個校驗對象 都有一項 trigger 是檢驗觸發(fā)的方式

對 el-input 輸入框的驗證,trigger的值選blur,即失去焦點時進行驗證。

下拉框 el-select、日期選擇器 el-date-picker、復選框 el-checkbox、單選框 el-radio驗證時,trigger的值選擇change,即當值發(fā)生變化時就進行驗證。

沒有任何輸入的時候,不會觸發(fā) change , 但一定會觸發(fā) blur 事件

注:如果使用了其他的組件(非ele組件等),組件中沒有 v-model 等等情況時,值改變時需要我們手動去觸發(fā)校驗

方法名說明參數
validateField對部分表單字段進行校驗的方法Function(props: array | string, callback: Function(errorMessage: string))
this.$refs.表單ref名稱.validateField(校驗字段);

validator

最后提一下自定義校驗,用于一些校驗一些復雜的值

validator的參數有:(rule, value, callback),前三個比較重要。

  • rule:指向該條規(guī)則對象。
  • value:新的值,用于參與運算、對比。
  • callback:執(zhí)行回調,使用方法是:callback('...');。
    • 如果不傳參:表示驗證通過,一般不必專門強調。
    • 如果傳入值:字符串會作為錯誤提示,但是顯示優(yōu)先級低于外層的message。比如callback('內層錯誤提示');跟message: '外層錯誤提示'同時存在,則會提示:外層錯誤提示。

直接看代碼

data(){
  const name = (rule, value, callback) => {
    console.log(rule)
    console.log(value)
    console.log(callback)
    if (this.oldName === value) {
      callback(new Error("新名字不能和舊名字一致"));
    } else {
      callback();
    }
  };
  return {
    rules: {
        name: [
          { required: true, trigger: "blur", message: "請再次輸入新名字" },
          { required: true, validator: name, trigger: "blur" }
        ]
    }
  }

 更多的參數和核心代碼 可以查看 ele 實現校驗使用的 async-validator

總結

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

相關文章

  • Element 的 el-table 表格實現單元格合并功能

    Element 的 el-table 表格實現單元格合并功能

    這篇文章主要介紹了Element 的 el-table 表格實現單元格合并功能,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2024-07-07
  • Mint UI實現A-Z字母排序的城市選擇列表

    Mint UI實現A-Z字母排序的城市選擇列表

    這篇文章主要為大家詳細介紹了Mint UI實現A-Z字母排序的城市選擇列表,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • Vue動態(tài)控制input的disabled屬性的方法

    Vue動態(tài)控制input的disabled屬性的方法

    這篇文章主要介紹了Vue動態(tài)控制input的disabled屬性的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06
  • Vue路由模塊化配置的完整步驟

    Vue路由模塊化配置的完整步驟

    這篇文章主要給大家介紹了關于Vue路由模塊化配置的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Vue具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • vue3的二維碼組件vue3-next-qrcode

    vue3的二維碼組件vue3-next-qrcode

    這篇文章主要為大家介紹了vue3的二維碼組件vue3-next-qrcode示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • 如何在在Vue3中使用markdown 編輯器組件

    如何在在Vue3中使用markdown 編輯器組件

    vue3發(fā)布正式版不久,生態(tài)還沒完全發(fā)展起來,目前支持vue3的開源markdown編輯器組件基本上也寥寥無幾,向大家推薦一個很好用的v-md-editor 組件,組件功能很強大,文檔也比較詳細。該文章只介紹組件的常用功能,更多高級的功能可以參考官方文檔。
    2021-05-05
  • Vue組件更新數據v-model不生效的解決

    Vue組件更新數據v-model不生效的解決

    這篇文章主要介紹了Vue組件更新數據v-model不生效的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Vue打包后出現一些map文件的解決方法

    Vue打包后出現一些map文件的解決方法

    本篇文章主要介紹了Vue打包后出現一些map文件的解決方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • vue本地模擬服務器請求mock數據的方法詳解

    vue本地模擬服務器請求mock數據的方法詳解

    這篇文章主要給大家介紹了關于vue本地模擬服務器請求mock數據的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-03-03
  • vue 監(jiān)聽窗口變化對頁面部分元素重新渲染操作

    vue 監(jiān)聽窗口變化對頁面部分元素重新渲染操作

    這篇文章主要介紹了vue 監(jiān)聽窗口變化對頁面部分元素重新渲染操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07

最新評論

洮南市| 额敏县| 涞水县| 蛟河市| 外汇| 德钦县| 横峰县| 绥化市| 楚雄市| 香港| 古交市| 黄石市| 凤阳县| 喜德县| 耒阳市| 灵武市| 龙海市| 莱阳市| 青州市| 肃宁县| 黔西| 吴江市| 卢龙县| 施甸县| 金山区| 阜新| 简阳市| 大安市| 凤庆县| 太和县| 贵州省| 达拉特旗| 宝山区| 德阳市| 西青区| 清丰县| 隆回县| 华宁县| 盖州市| 浙江省| 东乌珠穆沁旗|