Vue.js 表單校驗插件
Vuerify 是一個簡單輕量的數(shù)據(jù)校驗插件。內(nèi)置基礎的校驗規(guī)則和錯誤提示??勺远x規(guī)則,規(guī)則類型支持正則、函數(shù)或者字符串。校驗規(guī)則可全局注冊也可以組件內(nèi)注冊。插件會給 vm 添加 $vuerify 對象,同時 watch 數(shù)據(jù)并校驗合法性,如果有錯誤會存入 vm.$vuerify.$errors。
安裝
npm i vuerify -S
使用
安裝插件
import Vue from 'vue' import Vuerify from 'vuerify' Vue.use(Vuerify, /* 添加自定義規(guī)則 */)
添加自定義規(guī)則
test 可以是正則或者函數(shù)
{ required: { test: /\S+$/, message: '必填項' } }
組件內(nèi)注冊
{ data () { username: '', password: '' }, vuerify: { username: { test: /\w{4,}/, // 自定義規(guī)則,可以是函數(shù),正則或者全局注冊的規(guī)則(填字符串) message: '至少 4 位字符' }, password: 'required' // 使用全局注冊的規(guī)則 } }
API
$vuerify 包含如下屬性
name description type default Value
$errors 數(shù)據(jù)校驗失敗的錯誤信息, 例如 username 校驗失敗會返回 { username: '至少 4 位字符' } Object {}
invalid 存在校驗失敗的字段 Boolean true
valid 不存在校驗失敗的字段 Boolean false
check 檢查指定字段,傳入數(shù)組,返回 Boolean Function(Array) -
clear 清空錯誤列表 Function -
v-vuerify
該指令可以在表單組件觸發(fā) blur 事件時驗證數(shù)據(jù)并為組件設置類名(默認為 .vuerify-invalid)??梢允?input 等原生組件,也可以是自己封裝過的組件。提供兩個版本
安裝
# Vue 1.x npm v-vuerify -S # Vue 2.0 npm v-vuerify-next -S
用法
import Vue from 'vue' import VuerifyDirective from 'v-vuerify' // Vue1.x import VuerifyDirective from 'v-vuerify-next' // Vue2.0 Vue.use(VuerifyDirective) <input v-model="username" v-vuerify="'username'"> <x-input :value.sync="password" v-vuerify="'password'"></x-input>
Params
verifyInvalidClass
默認類名為 vuerify-invalid
<input v-model="username" v-vuerify="'username'" vuerify-invalid-class="error">
Modifiers
parent
如果 vuerify 是在父組件注冊的,那么就需要指定 parent,讓指令可以從父組件獲取對應的 $vuerify,具體看 demo
Events
vuerify-invalid
vuerify-valid
相關(guān)文章
vue3.0語法糖內(nèi)的defineProps及defineEmits解析
這篇文章主要介紹了vue3.0語法糖內(nèi)的defineProps及defineEmits解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-04-04