Vue表单验证插件Vue Validator使用方法详解

网友投稿 964 2023-05-25


Vue表单验证插件Vue Validator使用方法详解

vue-validator 是Vue的表单验证插件,供大家参考,具体内容如下

Vue版本: 1.0.24

Vue-validator版本: 2.1.3

基本使用

请输入你的名字

您的评论太长了

将要验证的表单包裹在validator自定义元素指令中,而在要验证的表单控件元素的 v-validate 属性上绑定相应的校验规则。

验证结果会保存在组建实例的 $validation 属性下。 $validation 是由 validator 元素和 name 属性和 $ 前缀组件

验证结果结构

{

// 表单整体验证

"valid": false, // 字段校验是否通过

"invalid": true, // valid 取反

"touched": false, // 校验字段所在元素获得通过焦点时返回true,否则返回false

"untouched": true, // touched 取反

"modified": false, // 当元素值与初始值不同时返回true,否则返回false

"dirty": false, // 字段值改变过至少一次返回true,否则返回false

"pristine": true, // dirty 取反

// 字段单一验证

"username": {

"required": true,

"modified": false,

"pristine": true,

"dirty": false,

"untouched": true,

"touched": false,

"invalid": true,

"valid": false

},

"comment": {

"maxlength": false,

"modified": false,

"pristine": true,

"dirty": false,

"untouched": true,

"touched": false,

"invalid": false,

"valid": true

}

}

校验结果由两部分组成。表单整体校验结果和单个字段校验结果。

验证器语法

v-validate 指令语法:

v-validate[:field]=”array literal | object literfal | binding”

校验字段名field

field用来标识校验字段,之后可以用该字段来引用校验结果

v-validate 指令用来定义校验规则,其值可以是数组字面量,对象字面量,组件实例数组属性名。

数组字面量

当校验器不需要额外参数时,可以使用数组字面量形式,如 required 校验器,只要出现就带I表该校验器所在元素是必填项。

Zip:

邮政编码是必填项

对象字面量

对象字面量语法适合需要额外参数的校验器。如限制输入长度的校验器 minlength,需要说明限制长度多少。

ID:


ID不能为空

你的ID名字太短

你的ID名字太长

还可以用 对象字面量语法通过 rule 字段来自定义验证规则

ID:


ID不能为空

你的ID名字太短

你的ID名字太长

实例数据属性

v-validate 的值可以是组建实例的数据属性。这样可以用来动态绑定校验规则。

ID:

不能为空

你的ID太短

你的ID太长

内置校验规则

vue-validator 内置一些常用的验证规则:

required — 输入值不能为空

pattern — 必须匹配pattern表示的正则表达式

minlength — 输入值长度不能小于minlength表示的值

maxlength — 输入的值不能大于maxlength表示的值

min — 输入值不能小于min表示的值

max — 输入值不能大于max表示的值

与v-model同时使用

vue-validator会自动校验通过v-model动态设置的值。

message:


message不能为空

message输入太长位数

重置校验结果

通过在Vue组件实例上调用$resetValidation();方法来动态重置校验结果。

用户名不能为空

输入文字超过256个

复选框checkbox

请选择水果

{{msg | json}}

下拉类表select

不能为空!

校验状态class

各校验状态都有其对应的class(默认) 也可以自定义校验状态class

<

分组校验

vue-validator支持分组校验。例如重复密码功能。

username:

password:

comfirm password:

用户名不能为空

密码不能为空

密码不能少于8位

重复密码不能为空

密码不能少于8位

密码不一致

本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Bootstrap.css与layDate日期选择样式起冲突的解决办法
下一篇:socket.io实现在线群聊功能
相关文章

 发表评论

暂时没有评论,来抢沙发吧~