引入:
npm install vee-validate --save
vue代碼:
import VeeValidate from 'vee-validate';import zh_CN from 'vee-validate/dist/locale/zh_CN'; //引入中文包,提示信息可以以中文形式顯示import { Validator } from 'vee-validate';Validator.addLocale(zh_CN); // 設(shè)置提示信息中文方式顯示const config = { errorBagName: 'errors', fieldsBagName: 'fields', delay: 100, locale: 'zh_CN', strict: true, enableAutoClasses: true, events: 'blur', inject: true};// 自定義提示信息const dictionary = { zh_CN: { messages: { ip: () => 'ip格式不正確😯 >.<' } }};Validator.updateDictionary(dictionary);// 自定義規(guī)則Validator.extend('qq', { messages: { zh_CN:field => 'qq號(hào)碼輸入不正確' }, validate: value => { return /^[1-9][0-9]{4,14}$/.test(value); }});Vue.use(VeeValidate, config); //一般插件都要use一下使用
<label><span>ip:</span><input v-validate="'required|email'" name="email" type="text" v-model="ip"/></label><span v-show="errors.first('ip')">{{ errors.first('ip') }}</span>注意 : name一定要寫(xiě),否則不會(huì)進(jìn)行驗(yàn)證
config配置信息
插件的一些功能可以自定義,需要編寫(xiě)config,然后Vue.use(VeeValidate, config)來(lái)使用
一下為配置信息的意思(可能不全面)
errorBagName: 'erroers'
所有的錯(cuò)誤信息都是放在這個(gè)里面的,如果名稱(chēng)和頁(yè)面上的變量名字沖突,需要修改成其他的,當(dāng)是errors.fist的時(shí)候,error就是字符串,當(dāng)使用error.all()/error.collect()的時(shí)候就是數(shù)組
fieldsBagName: 'fields'
字段的名稱(chēng)(標(biāo)志)的對(duì)象,將在每個(gè)Vue的實(shí)例數(shù)據(jù)注入。如果在頁(yè)面上使用了ip的驗(yàn)證,那么,可以通過(guò)如下獲取一個(gè)對(duì)象:
this.fileds.ip >> 獲取到的對(duì)象:{ dirty :true invalid:false pending:false pristine:false required:true touched:true untouched:false valid:true validated:true}delay : 100 表示獲取輸入信息的時(shí)間
locale: ‘zh_CN' 驗(yàn)證消息的默認(rèn)語(yǔ)言。
strict: true 表示沒(méi)有設(shè)置規(guī)則的表單不進(jìn)行驗(yàn)證
classes (不懂)
events: 'blur|input' 默認(rèn)是input|blur 就是在用戶(hù)輸入和表單失去焦點(diǎn)的時(shí)候都進(jìn)行驗(yàn)證,blue表示失去焦點(diǎn)的時(shí)候進(jìn)行驗(yàn)證
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持錯(cuò)新站長(zhǎng)站。
新聞熱點(diǎn)
疑難解答
圖片精選