亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue引用vee-validate插件表單驗(yàn)證問(wèn)題(cdn方式引用)

 更新時(shí)間:2022年12月01日 16:58:14   作者:wangyile4399  
這篇文章主要介紹了Vue引用vee-validate插件表單驗(yàn)證問(wèn)題(cdn方式引用),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

引用vee-validate插件表單驗(yàn)證(cdn方式引入)

之前用的是webpack打包工具寫(xiě)的項(xiàng)目,后來(lái)需求改成靜態(tài)頁(yè)面的方式,所以又要把一些引入方式改過(guò)來(lái),這就是前端麻煩的地方。

網(wǎng)上也有很多npm引入方式的,主要是老版本和新版本vee-validate引起的問(wèn)題(特別是中文錯(cuò)誤提示的引用問(wèn)題),我這里寫(xiě)一下關(guān)于cdn方式引入,中文包配置的問(wèn)題。

一、 CDN方式(官網(wǎng))

<!-- jsdelivr cdn -->
<script src="https://cdn.jsdelivr.net/npm/vee-validate@latest/dist/vee-validate.js"></script>

<!-- unpkg -->
<script src="https://unpkg.com/vee-validate@latest"></script>

二、 結(jié)合Vue使用

Vue.use(VeeValidate, {
    events: 'change'     //這里的events是觸發(fā)事件,例如失去焦點(diǎn)驗(yàn)證,我這里用的是輸入改變校驗(yàn)
});

Vue引入這里就不詳解了,不知道的自行百度。

網(wǎng)上有很多配置參數(shù),有需要的可以去查一下,我這里沒(méi)用到就沒(méi)寫(xiě)了,網(wǎng)上有些也是花里胡哨的,沒(méi)必要,只是做個(gè)驗(yàn)證,搞得腦子疼。

不加參數(shù)就是這樣:

Vue.use(VeeValidate);

三、使用中文錯(cuò)誤提示

先下載中文包

https://cdn.bootcss.com/vee-validate/2.2.15/locale/zh_CN.js

沒(méi)辦法,暫時(shí)沒(méi)有找到新版本zh_CN.json的使用方式,cdn引入方式就用這個(gè)中文提示包就行了,webpack項(xiàng)目的不會(huì)存在這個(gè)問(wèn)題。

之后再調(diào)用即可:

VeeValidate.Validator.localize('zh_CN');

如果不使用這個(gè)包的可以引用一下代碼:

VeeValidate.Validator.localize({
    zh_CN: {
        messages: {
            _default: (field) => `${field}的值無(wú)效`,
            after: (field, [target, inclusion]) => `${field}必須在${target}之后${inclusion ? '或等于' + target : ''}`,
            alpha: (field) => `${field}只能包含字母字符`,
            alpha_dash: (field) => `${field}能夠包含字母數(shù)字字符、破折號(hào)和下劃線`,
            alpha_num: (field) => `${field}只能包含字母數(shù)字字符`,
            alpha_spaces: (field) => `${field}只能包含字母字符和空格`,
            before: (field, [target, inclusion]) => `${field}必須在${target}之前${inclusion ? '或等于' + target : ''}`,
            between: (field, [min, max]) => `${field}必須在${min}與${max}之間`,
            confirmed: (field, [confirmedField]) => `${field}不能和上面${confirmedField}匹配`,
            credit_card: (field) => `${field}的格式錯(cuò)誤`,
            date_between: (field, [min, max]) => `${field}必須在${min}和${max}之間`,
            date_format: (field, [format]) => `${field}必須符合${format}格式`,
            decimal: (field, [decimals = '*'] = []) => `${field}必須是數(shù)字,且能夠保留${decimals === '*' ? '' : decimals}位小數(shù)`,
            digits: (field, [length]) => `${field}必須是數(shù)字,且精確到${length}位數(shù)`,
            dimensions: (field, [width, height]) => `${field}必須在${width}像素與${height}像素之間`,
            email: (field) => `${field}不是一個(gè)有效的郵箱`,
            excluded: (field) => `${field}不是一個(gè)有效值`,
            ext: (field) => `${field}不是一個(gè)有效的文件`,
            image: (field) => `${field}不是一張有效的圖片`,
            included: (field) => `${field}不是一個(gè)有效值`,
            integer: (field) => `${field}必須是整數(shù)`,
            ip: (field) => `${field}不是一個(gè)有效的地址`,
            length: (field, [length, max]) => {
                if (max) {
                    return `${field}長(zhǎng)度必須在${length}到${max}之間`
                }

                return `${field}長(zhǎng)度必須為${length}`
            },
            max: (field, [length]) => `${field}不能超過(guò)${length}個(gè)字符`,
            max_value: (field, [max]) => `${field}必須小于或等于${max}`,
            mimes: (field) => `${field}不是一個(gè)有效的文件類(lèi)型`,
            min: (field, [length]) => `${field}必須至少有${length}個(gè)字符`,
            min_value: (field, [min]) => `${field}必須大于或等于${min}`,
            numeric: (field) => `${field}只能包含數(shù)字字符`,
            regex: (field) => `${field}格式無(wú)效`,
            required: (field) => `${field}是必須的`,
            size: (field, [size]) => `${field}必須小于${formatFileSize(size)}`,
            url: (field) => `${field}不是一個(gè)有效的url`
        }
    }
})

內(nèi)容是差不多的,用代碼的話更直觀一點(diǎn)。

四、HTML代碼示例

<div class="item-ipt" >
     <label>賬號(hào)</label>
     <input class="ipt" name="name" data-vv-as="賬號(hào)" v-validate="'required|alpha_dash'" v-model="username" placeholder="請(qǐng)輸入用戶名" :disabled="nameable"/>
     <span v-show="errors.has('name')" class="ipt-err">{{ errors.first('name') }}</span>
</div>
<div class="item-ipt" >
     <label>手機(jī)號(hào)</label>
     <input class="ipt" name="mobile" data-vv-as="手機(jī)號(hào)" v-validate="'required|mobile'" v-model="mobile" placeholder="請(qǐng)輸入驗(yàn)證碼" />
     <span v-show="errors.has('mobile')" class="ipt-err">{{ errors.first('mobile') }}</span>
</div>
  • name:必須要添加,不然無(wú)法關(guān)聯(lián)
  • data-vv-as:錯(cuò)誤提示的中文名稱(chēng);例:賬號(hào)不能為空,手機(jī)號(hào)不能為空。
  • v-validate:驗(yàn)證規(guī)則,多個(gè)用 ‘|’ 分開(kāi)。alpha_dash 就是中文規(guī)則,能夠包含字母數(shù)字字符、破折號(hào)和下劃線的意思。

錯(cuò)誤提示span里的內(nèi)容為固定寫(xiě)法,errors.has有無(wú)錯(cuò)誤顯示,errors.first提示錯(cuò)誤信息

五、自定義驗(yàn)證規(guī)則

這里放了一些例子提供參考

//手機(jī)的驗(yàn)證。
VeeValidate.Validator.extend("mobile", {
    getMessage: () => `請(qǐng)輸入正確的手機(jī)號(hào)碼`,
    validate: value =>
        value.length === 11 &&
        /^(((13[0-9]{1})|(14[57]{1})|(15[012356789]{1})|(17[03678]{1})|(18[0-9]{1})|(19[89]{1})|(16[6]{1}))+\d{8})$/.test(
            value
        )
});
//身份證的驗(yàn)證。
VeeValidate.Validator.extend("idCard", {
    getMessage: () => `請(qǐng)輸入正確的身份證號(hào)碼`,
    validate: value =>
        /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}(\d|[xX])$/.test(
            value
        )
});
//郵箱的驗(yàn)證。
VeeValidate.Validator.extend("Email", {
    getMessage: () => `請(qǐng)輸入正確的郵箱地址`,
    validate: value =>
        /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(
            value
        )
});
//郵箱的驗(yàn)證。
VeeValidate.Validator.extend("fax", {
    getMessage: () => `請(qǐng)輸入正確的辦公電話`,
    validate: value =>
        /^((0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/.test(
            value
        )
});
VeeValidate.Validator.extend("intOrDe", {
    getMessage: () => `請(qǐng)輸入正確的值,整數(shù)或小數(shù),小數(shù)后只能二位`,
    validate: value =>
        /^(-)?\d+(\.\d{1,2})?$/.test(
            value
        )
});

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何修改vant的less樣式變量

    如何修改vant的less樣式變量

    這篇文章主要介紹了如何修改vant的less樣式變量方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Vue SPA單頁(yè)應(yīng)用首屏優(yōu)化實(shí)踐

    Vue SPA單頁(yè)應(yīng)用首屏優(yōu)化實(shí)踐

    這篇文章主要介紹了Vue SPA單頁(yè)應(yīng)用首屏優(yōu)化實(shí)踐,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • antd-日歷組件,前后禁止選擇,只能選中間一部分的實(shí)例

    antd-日歷組件,前后禁止選擇,只能選中間一部分的實(shí)例

    這篇文章主要介紹了antd-日歷組件,前后禁止選擇,只能選中間一部分的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • 不能通過(guò)IP地址訪問(wèn)VUE項(xiàng)目的問(wèn)題及解決

    不能通過(guò)IP地址訪問(wèn)VUE項(xiàng)目的問(wèn)題及解決

    這篇文章主要介紹了不能通過(guò)IP地址訪問(wèn)VUE項(xiàng)目的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue結(jié)合leaflet實(shí)現(xiàn)鷹眼圖

    vue結(jié)合leaflet實(shí)現(xiàn)鷹眼圖

    本文主要介紹了vue結(jié)合leaflet實(shí)現(xiàn)鷹眼圖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Vue-Router進(jìn)階之滾動(dòng)行為詳解

    Vue-Router進(jìn)階之滾動(dòng)行為詳解

    本篇文章主要介紹了Vue-Router進(jìn)階之滾動(dòng)行為詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-09-09
  • Vue中虛擬列表的原理與實(shí)現(xiàn)詳解

    Vue中虛擬列表的原理與實(shí)現(xiàn)詳解

    虛擬列表是一種技術(shù),它只渲染用戶當(dāng)前可見(jiàn)的列表項(xiàng),而不是渲染整個(gè)列表,這篇文章主要來(lái)和大家聊聊虛擬列表的原理與實(shí)現(xiàn),希望對(duì)大家有所幫助
    2023-05-05
  • vue?中使用?bimface詳情

    vue?中使用?bimface詳情

    這篇文章主要介紹了vue?中使用?bimface詳情,分別有安裝?vue?腳手架、創(chuàng)建項(xiàng)目、引入?bimface?響應(yīng)的文件、修改?App.vue?文件,實(shí)現(xiàn)頁(yè)面渲染等步驟,需要的小伙伴可以參考一下
    2021-12-12
  • vue elementui select標(biāo)簽監(jiān)聽(tīng)change事件失效問(wèn)題

    vue elementui select標(biāo)簽監(jiān)聽(tīng)change事件失效問(wèn)題

    這篇文章主要介紹了vue elementui select標(biāo)簽監(jiān)聽(tīng)change事件失效問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • vue實(shí)現(xiàn)滑動(dòng)驗(yàn)證條

    vue實(shí)現(xiàn)滑動(dòng)驗(yàn)證條

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)滑動(dòng)驗(yàn)證條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評(píng)論