您好,登錄后才能下訂單哦!
這篇文章主要介紹vee-validate怎么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
一、安裝
npm install vee-validate@next --save
后面加@next是為了安裝vue2.0的版本
二、引入
我使用的是vue-cli腳手架工具,需要在main.js中
import VeeValidate from 'vee-validate' Vue.use(VeeValidate);
三、簡單的使用
這個時候其實已經可以使用了,先上demo
<div> <label for="email">郵箱:</label> <input v-validate ="'required|email'" type="text" id="email" name="myEmail"> </div> <span v-show="errors.has('myEmail')">{{ errors.first('myEmail')}}</span>
解釋一下:v-validate后面的required和email是官方已經規定好的幾種默認錯誤類型中的兩個,這個可以閱讀官方文檔。
span中用到了errors的幾個方法,這里的參數都是定義了驗證規則的表單的name。列舉幾個errors的方法:
1、first(‘field')
field中(也就是剛剛說過的name表單)中的第一個錯誤
2、collect(‘field')
field中所有的錯誤
3、has(‘field')
field中是否有錯誤
4、all()
當前表單中的所有錯誤
5、any()
當前表單中是否有錯誤
6、count()
當前表單中的錯誤數量
7、clear()
清除當前表單中的所有錯誤
四、使用中文錯誤提示
沒有配置過的錯誤提示默認使用英文顯示的,如果想要用中文顯示需要我們手動配置一下
首先還是在main.js中引入
import zh_CN from 'vee-validate/dist/locale/zh_CN' import { Validator } from 'vee-validate';
緊接著再加一句
Validator.addLocale(zh_CN);
最后需要把第一步的Vue.use(VeeValidate)改為
Vue.use(VeeValidate, { locale: 'zh_CN', });
現在錯誤提示已經是中文了
五、配置組件
上一點中的配置中文其實已經是對組件的配置了,再說一說其他的配置。
//配置 const config = { errorBagName: 'errors', // change if property conflicts. fieldsBagName: 'fields', delay: 0, locale: 'zh_CN', strict: true, enableAutoClasses: false, classNames: { touched: 'touched', // the control has been blurred untouched: 'untouched', // the control hasn't been blurred valid: 'valid', // model is valid invalid: 'invalid', // model is invalid pristine: 'pristine', // control has not been interacted with dirty: 'dirty' // control has been interacted with }, events: 'blur', inject: true }; Vue.use(VeeValidate, config);
delay是指對錯誤提示的延遲時間;locale就是上一點中對中文的配置,只是這里統一寫到了config中;strict=true代表沒有設置規則的表單不進行校驗,events默認是input|blur,就是在用戶輸入和表單失去焦點時都進行校驗,這里我改成了blur,即只有失去焦點時才開始驗證。
五、修改默認的錯誤提示信息
//修改默認錯誤提示 const dictionary = { zh_CN: { messages: { email: () => '郵箱格式不正確哦' } } }; Validator.updateDictionary(dictionary);
demo中修改了email的錯誤提示信息,因為使用的中文(前面引入的),所以是zh_CN。最后用updateDictionary方法加入到Validator中。
六、自定義規則
Validator.extend('qq', { messages: { zh_CN:field => 'qq號碼輸入不正確' }, validate: value => { return /^[1-9][0-9]{4,14}$/.test(value); } });
extend的第一個參數就是自定義的規則的名字,可以像使用默認規則一樣使用它,messages中是錯誤提示信息,validate是驗證規則,返回一個布爾值或promise.
以上是“vee-validate怎么用”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。