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

前端Vue中常用rules校驗(yàn)規(guī)則詳解

 更新時(shí)間:2022年07月17日 16:35:43   作者:lianghaibos  
這篇文章主要介紹了前端Vue中常用rules校驗(yàn)規(guī)則詳解,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下

1、是否合法IP地址

export function validateIP(rule, value,callback) {
  if(value==''||value==undefined||value==null){
    callback();
  }else {
    const reg = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\
![](https://img-blog.csdnimg.cn/img_convert/c19808efb80ef9cf32f19b973d48462e.png).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
    if ((!reg.test(value)) && value != '') {
      callback(new Error('請(qǐng)輸入正確的IP地址'));
    } else {
      callback();
    }
  }
}

2、是否手機(jī)號(hào)碼或者固話

export function validatePhoneTwo(rule, value, callback) {
  const reg = /^((0\d{2,3}-\d{7,8})|(1[34578]\d{9}))$/;;
  if (value == '' || value == undefined || value == null) {
    callback();
  } else {
    if ((!reg.test(value)) && value != '') {
      callback(new Error('請(qǐng)輸入正確的電話號(hào)碼或者固話號(hào)碼'));
    } else {
      callback();
    }
  }
}

3、是否固話

export function validateTelphone(rule, value,callback) {
  const reg =/0\d{2,3}-\d{7,8}/;
  if(value==''||value==undefined||value==null){
    callback();
  }else {
    if ((!reg.test(value)) && value != '') {
      callback(new Error('請(qǐng)輸入正確的固定電話)'));
    } else {
      callback();
    }
  }
}

4、是否手機(jī)號(hào)碼

export function validatePhone(rule, value,callback) {
  const reg =/^[1][3-9][0-9]{9}$/;
  if(value==''||value==undefined||value==null){
    callback();
  }else {
    if ((!reg.test(value)) && value != '') {
      callback(new Error('請(qǐng)輸入正確的電話號(hào)碼'));
    } else {
      callback();
    }
  }
}

5、是否身份證號(hào)碼

export function validateIdNo(rule, value,callback) {
  const reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
  if(value==''||value==undefined||value==null){
    callback();
  }else {
    if ((!reg.test(value)) && value != '') {
      callback(new Error('請(qǐng)輸入正確的身份證號(hào)碼'));
    } else {
      callback();
    }
  }
}

6、是否郵箱

export function validateEMail(rule, value,callback) {
  const reg =/^([a-zA-Z0-9]+[-_\.]?)+@[a-zA-Z0-9]+\.[a-z]+$/;
  if(value==''||value==undefined||value==null){
    callback();
  }else{
    if (!reg.test(value)){
      callback(new Error('請(qǐng)輸入正確的郵箱'));
    } else {
      callback();
    }
  }
}

7、合法url

export function validateURL(url) {
  const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/;
  return urlregex.test(url);
}

8、驗(yàn)證內(nèi)容是否包含英文數(shù)字以及下劃線

export function isPassword(rule, value, callback) {
  const reg =/^[_a-zA-Z0-9]+$/;
  if(value==''||value==undefined||value==null){
    callback();
  } else {
    if (!reg.test(value)){
      callback(new Error('僅由英文字母,數(shù)字以及下劃線組成'));
    } else {
      callback();
    }
  }
}

9、自動(dòng)檢驗(yàn)數(shù)值的范圍

export function checkMax20000(rule, value, callback) {
  if (value == '' || value == undefined || value == null) {
    callback();
  } else if (!Number(value)) {
    callback(new Error('請(qǐng)輸入[1,20000]之間的數(shù)字'));
  } else if (value < 1 || value > 20000) {
    callback(new Error('請(qǐng)輸入[1,20000]之間的數(shù)字'));
  } else {
    callback();
  }
}

10、驗(yàn)證數(shù)字輸入框最大數(shù)值

export function checkMaxVal(rule, value,callback) {
  if (value < 0 || value > 最大值) {
    callback(new Error('請(qǐng)輸入[0,最大值]之間的數(shù)字'));
  } else {
    callback();
  }
}

11、驗(yàn)證是否1-99之間

export function isOneToNinetyNine(rule, value, callback) {
  if (!value) {
    return callback(new Error('輸入不可以為空'));
  }
  setTimeout(() => {
    if (!Number(value)) {
      callback(new Error('請(qǐng)輸入正整數(shù)'));
    } else {
      const re = /^[1-9][0-9]{0,1}$/;
      const rsCheck = re.test(value);
      if (!rsCheck) {
        callback(new Error('請(qǐng)輸入正整數(shù),值為【1,99】'));
      } else {
        callback();
      }
    }
  }, 0);
}

12、驗(yàn)證是否整數(shù)

export function isInteger(rule, value, callback) {
  if (!value) {
    return callback(new Error('輸入不可以為空'));
  }
  setTimeout(() => {
    if (!Number(value)) {
      callback(new Error('請(qǐng)輸入正整數(shù)'));
    } else {
      const re = /^[0-9]*[1-9][0-9]*$/;
      const rsCheck = re.test(value);
      if (!rsCheck) {
        callback(new Error('請(qǐng)輸入正整數(shù)'));
      } else {
        callback();
      }
    }
  }, 0);
}

13、驗(yàn)證是否整數(shù),非必填

export function isIntegerNotMust(rule, value, callback) {
  if (!value) {
    callback();
  }
  setTimeout(() => {
    if (!Number(value)) {
      callback(new Error('請(qǐng)輸入正整數(shù)'));
    } else {
      const re = /^[0-9]*[1-9][0-9]*$/;
      const rsCheck = re.test(value);
      if (!rsCheck) {
        callback(new Error('請(qǐng)輸入正整數(shù)'));
      } else {
        callback();
      }
    }
  }, 1000);
}

14、 驗(yàn)證是否是[0-1]的小數(shù)

export function isDecimal(rule, value, callback) {
  if (!value) {
    return callback(new Error('輸入不可以為空'));
  }
  setTimeout(() => {
    if (!Number(value)) {
      callback(new Error('請(qǐng)輸入[0,1]之間的數(shù)字'));
    } else {
      if (value < 0 || value > 1) {
        callback(new Error('請(qǐng)輸入[0,1]之間的數(shù)字'));
      } else {
        callback();
      }
    }
  }, 100);
}

15、 驗(yàn)證是否是[1-10]的小數(shù),即不可以等于0

export function isBtnOneToTen(rule, value, callback) {
  if (typeof value == 'undefined') {
    return callback(new Error('輸入不可以為空'));
  }
  setTimeout(() => {
    if (!Number(value)) {
      callback(new Error('請(qǐng)輸入正整數(shù),值為[1,10]'));
    } else {
      if (!(value == '1' || value == '2' || value == '3' || value == '4' || value == '5' || value == '6' || value == '7' || value == '8' || value == '9' || value == '10')) {
        callback(new Error('請(qǐng)輸入正整數(shù),值為[1,10]'));
      } else {
        callback();
      }
    }
  }, 100);
}

16、驗(yàn)證是否是[1-100]的小數(shù),即不可以等于0

export function isBtnOneToHundred(rule, value, callback) {
  if (!value) {
    return callback(new Error('輸入不可以為空'));
  }
  setTimeout(() => {
    if (!Number(value)) {
      callback(new Error('請(qǐng)輸入整數(shù),值為[1,100]'));
    } else {
      if (value < 1 || value > 100) {
        callback(new Error('請(qǐng)輸入整數(shù),值為[1,100]'));
      } else {
        callback();
      }
    }
  }, 100);
}

17、驗(yàn)證是否是[0-100]的小數(shù)

export function isBtnZeroToHundred(rule, value, callback) {
  if (!value) {
    return callback(new Error('輸入不可以為空'));
  }
  setTimeout(() => {
    if (!Number(value)) {
      callback(new Error('請(qǐng)輸入[1,100]之間的數(shù)字'));
    } else {
      if (value < 0 || value > 100) {
        callback(new Error('請(qǐng)輸入[1,100]之間的數(shù)字'));
      } else {
        callback();
      }
    }
  }, 100);
}

18、驗(yàn)證端口是否在[0,65535]之間

export function isPort(rule, value, callback) {
  if (!value) {
    return callback(new Error('輸入不可以為空'));
  }
  setTimeout(() => {
    if (value == '' || typeof(value) == undefined) {
      callback(new Error('請(qǐng)輸入端口值'));
    } else {
      const re = /^([0-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/;
      const rsCheck = re.test(value);
      if (!rsCheck) {
        callback(new Error('請(qǐng)輸入在[0-65535]之間的端口值'));
      } else {
        callback();
      }
    }
  }, 100);
}

19、驗(yàn)證端口是否在[0,65535]之間,非必填,isMust表示是否必填

export function isCheckPort(rule, value, callback) {
  if (!value) {
    callback();
  }
  setTimeout(() => {
    if (value == '' || typeof(value) == undefined) {
      //callback(new Error('請(qǐng)輸入端口值'));
    } else {
      const re = /^([0-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/;
      const rsCheck = re.test(value);
      if (!rsCheck) {
        callback(new Error('請(qǐng)輸入在[0-65535]之間的端口值'));
      } else {
        callback();
      }
    }
  }, 100);
}

20、小寫(xiě)字母

export function validateLowerCase(val) {
  const reg = /^[a-z]+$/;
  return reg.test(val);
}

22、兩位小數(shù)驗(yàn)證

const validateValidity = (rule, value, callback) => {
  if (!/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(value)) {
    callback(new Error('最多兩位小數(shù)?。?!'));
  } else {
    callback();
  }
};

23、是否大寫(xiě)字母

export function validateUpperCase(val) {
  const reg = /^[A-Z]+$/;
  return reg.test(val);
}

24、是否大小寫(xiě)字母

export function validatAlphabets(val) {
  const reg = /^[A-Za-z]+$/;
  return reg.test(val);
}

25、密碼校驗(yàn)

export const validatePsdReg = (rule, value, callback) => {
  if (!value) {
    return callback(new Error('請(qǐng)輸入密碼'))
  }
  if (!/^(?![\d]+$)(?![a-zA-Z]+$)(?![^\da-zA-Z]+$)([^\u4e00-\u9fa5\s]){6,20}$/.test(value)) {
    callback(new Error('請(qǐng)輸入6-20位英文字母、數(shù)字或者符號(hào)(除空格),且字母、數(shù)字和標(biāo)點(diǎn)符號(hào)至少包含兩種'))
  } else {
    callback()
  }
}

26、中文校驗(yàn)

export const validateContacts = (rule, value, callback) => {
  if (!value) {
    return callback(new Error('請(qǐng)輸入中文'))
  }
  if (!/^[\u0391-\uFFE5A-Za-z]+$/.test(value)) {
    callback(new Error('不可輸入特殊字符'))
  } else {
    callback()
  }
}

27、 賬號(hào)校驗(yàn)

export const validateCode = (rule, value, callback) => {
  if (!value) {
    return callback(new Error('請(qǐng)輸入賬號(hào)'))
  }
  if (!/^(?![0-9]*$)(?![a-zA-Z]*$)[a-zA-Z0-9]{6,20}$/.test(value)) {
    callback(new Error('賬號(hào)必須為6-20位字母和數(shù)字組合'))
  } else {
    callback()
  }
}

28 、純數(shù)字校驗(yàn)

export const validateNumber = (rule, value, callback) => {
    let numberReg = /^\d+$|^\d+[.]?\d+$/
    if (value !== '') {
        if (!numberReg.test(value)) {
            callback(new Error('請(qǐng)輸入數(shù)字'))
        } else {
            callback()
        }
    } else {
        callback(new Error('請(qǐng)輸入值'))
    }
}

29、最多一位小數(shù)

const onePoint = (rule, value, callback) => {
  if (!/^[0-9]+([.]{1}[0-9]{1})?$/.test(value)) {
    callback(new Error('最多一位小數(shù)?。?!'));
  } else {
    callback();
  }
};

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

相關(guān)文章

  • vue.js編譯時(shí)給生成的文件增加版本號(hào)

    vue.js編譯時(shí)給生成的文件增加版本號(hào)

    這篇文章主要介紹了vue.js編譯時(shí)給生成的文件增加版本號(hào),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • vue與bootstrap實(shí)現(xiàn)時(shí)間選擇器的示例代碼

    vue與bootstrap實(shí)現(xiàn)時(shí)間選擇器的示例代碼

    本篇文章主要介紹了vue與bootstrap實(shí)現(xiàn)時(shí)間選擇器的示例代碼,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-08-08
  • Vue自定義復(fù)制指令 v-copy功能的實(shí)現(xiàn)

    Vue自定義復(fù)制指令 v-copy功能的實(shí)現(xiàn)

    這篇文章主要介紹了Vue自定義復(fù)制指令 v-copy,使用自定義指令創(chuàng)建一個(gè)點(diǎn)擊復(fù)制文本功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-01-01
  • Vue布置導(dǎo)航守衛(wèi)獲取用戶信息

    Vue布置導(dǎo)航守衛(wèi)獲取用戶信息

    這篇文章主要為大家介紹了Vue布置導(dǎo)航守衛(wèi)獲取用戶信息,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • vue在mounted中window.onresize不生效問(wèn)題及解決

    vue在mounted中window.onresize不生效問(wèn)題及解決

    這篇文章主要介紹了vue中在mounted中window.onresize不生效問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Element Badge標(biāo)記的使用方法

    Element Badge標(biāo)記的使用方法

    這篇文章主要介紹了Element Badge標(biāo)記的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Vue3源碼分析偵聽(tīng)器watch的實(shí)現(xiàn)原理

    Vue3源碼分析偵聽(tīng)器watch的實(shí)現(xiàn)原理

    watch?的本質(zhì)就是觀測(cè)一個(gè)響應(yīng)式數(shù)據(jù),當(dāng)數(shù)據(jù)發(fā)生變化時(shí)通知并執(zhí)行相應(yīng)的回調(diào)函數(shù)。watch的實(shí)現(xiàn)利用了effect?和?options.scheduler?選項(xiàng),這篇文章主要介紹了Vue3源碼分析偵聽(tīng)器watch的實(shí)現(xiàn)原理,需要的朋友可以參考下
    2022-08-08
  • vue中使用AJAX實(shí)現(xiàn)讀取來(lái)自XML文件的信息

    vue中使用AJAX實(shí)現(xiàn)讀取來(lái)自XML文件的信息

    這篇文章主要為大家詳細(xì)介紹了vue中如何使用AJAX實(shí)現(xiàn)讀取來(lái)自XML文件的信息,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的小伙伴可以參考下
    2023-12-12
  • Vue2.x如何解決Element組件el-tooltip滾動(dòng)時(shí)錯(cuò)位不消失的問(wèn)題

    Vue2.x如何解決Element組件el-tooltip滾動(dòng)時(shí)錯(cuò)位不消失的問(wèn)題

    這篇文章主要介紹了Vue2.x如何解決Element組件el-tooltip滾動(dòng)時(shí)錯(cuò)位不消失的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue項(xiàng)目部署后首頁(yè)白屏問(wèn)題排查與解決方法

    Vue項(xiàng)目部署后首頁(yè)白屏問(wèn)題排查與解決方法

    在部署 Vue.js 項(xiàng)目時(shí),有時(shí)會(huì)遇到首頁(yè)加載后出現(xiàn)白屏的情況,這可能是由于多種原因造成的,本文將介紹一些常見(jiàn)的排查方法和解決方案,幫助開(kāi)發(fā)者快速定位問(wèn)題并解決,感興趣的小伙伴跟著小編一起來(lái)看看吧
    2024-08-08

最新評(píng)論

平罗县| 商水县| 塔河县| 海安县| 石景山区| 房产| 兴宁市| 弥勒县| 平度市| 苍南县| 微博| 清苑县| 泸西县| 临沭县| 延吉市| 库尔勒市| 五家渠市| 盐边县| 新泰市| 科技| 浦北县| 来安县| 银川市| 上饶市| 文水县| 永兴县| 尼勒克县| 仁化县| 崇文区| 桃源县| 延边| 永康市| 高雄县| 平南县| 皋兰县| 敦化市| 巴南区| 教育| 遂昌县| 青岛市| 沐川县|