Github: https://github.com/QingWei-Li/vuerifyjavascript
Vuerify 是一个简单轻量的数据校验插件。内置基础的校验规则和错误提示。可自定义规则,规则类型支持正则、函数或者字符串。校验规则可全局注册也能够组件内注册。插件会给 vm 添加 $vuerify 对象,同时 watch 数据并校验合法性,若是有错误会存入 vm.$vuerify.$errors。html
npm i vuerify -S
import Vue from 'vue' import Vuerify from 'vuerify' Vue.use(Vuerify, /* 添加自定义规则 */)
test
能够是正则或者函数shell
{ required: { test: /\S+$/, message: '必填项' } }
{ data () { username: '', password: '' }, vuerify: { username: { test: /\w{4,}/, // 自定义规则,能够是函数,正则或者全局注册的规则(填字符串) message: '至少 4 位字符' }, password: 'required' // 使用全局注册的规则 } }
$vuerify 包含以下属性npm
name | description | type | default Value |
---|---|---|---|
$errors | 数据校验失败的错误信息, 例如 username 校验失败会返回 { username: '至少 4 位字符' } |
Object | {} |
invalid | 存在校验失败的字段 | Boolean | true |
valid | 不存在校验失败的字段 | Boolean | false |
check | 检查指定字段,传入数组,返回 Boolean | Function(Array) | - |
clear | 清空错误列表 | Function | - |
该指令能够在表单组件触发 blur 事件时验证数据并为组件设置类名(默认为 .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>
verifyInvalidClass函数
默认类名为 vuerify-invalid
<input v-model="username" v-vuerify="'username'" vuerify-invalid-class="error">
parent
若是 vuerify 是在父组件注册的,那么就须要指定 parent,让指令能够从父组件获取对应的 $vuerify,具体看 demo
vuerify-invalid
vuerify-valid