详解vue表单验证组件 v-verify-plugin


Posted in Javascript onApril 19, 2017

verify

github:https://github.com/liuyinglong/verify

npm:https://www.npmjs.com/package/vue-verify-plugin

install

npm install vue-verify-plugin

use

html

<div>
  <div>
    <input type="text" placeholder="姓名" v-verify.grow1="username" v-model="username"/>
    <label v-verified="verifyError.username"></label>
  </div>
  <div>
    <input type="password" placeholder="密码" v-verify.grow1="pwd" v-model="pwd"/>
    <label v-verified="verifyError.pwd"></label>
  </div>
  <button v-on:click="submit">确认</button>
 </div>

js

import Vue from "vue";
import verify from "vue-verify-plugin";
Vue.use(verify);

export default{
  data:function(){
    return {
      username:"",
      pwd:""
    }
  },
  methods:{
    submit:function(){
      if(this.$verify.check()){
        //通过验证  
      }
    }
  },
  verify:{
    username:[
      "required",
      {
        test:function(val){
          if(val.length<2){
            return false;
          }
          return true;
        },
        message:"姓名不得小于2位"
      }
    ],
    pwd:"required"
  },
  computed:{
    verifyError:function(){
      return this.$verify.$errors;
    }
  }
}

指令说明

v-verify

v-erify 在表单控件元素上创建数据的验证规则,他会自动匹配要验证的值以及验证的规则。

v-verify 修饰符说明

该指令最后一个修饰符为自定义分组

//自定义teacher分组
v-verify.teacher
//自定义student分组
v-verify.student

//验证时可分开进行验证 

//验证student 分组
this.$verify.check("student")
//验证teacher 分组
this.$verify.check("teacher")
//验证所有
this.$verify.check();

v-verified

v-verified 错误展示,当有错误时会展示,没有错误时会加上style:none,默认会展示该数据所有错误的第一条

该指令为语法糖(见示例)

<input v-model="username" v-verify="username">

<label v-show="$verify.$errors.username && $verify.$errors.username.length" v-text="$verify.$errors.username[0]"></label>
<!--等价于-->
<label v-verified="$verify.$errors.username"></label>
<!--展示所有错误-->
<label v-verified.join="$verify.$errors.username">

修饰符说明

.join 展示所有错误 用逗号隔开

自定义验证规则

var myRules={
  phone:{
    test:/^1[34578]\d{9}$/,
    message:"电话号码格式不正确"
  },
  max6:{
    test:function(val){
      if(val.length>6) {
        return false
      }
      return true;
    },
    message:"最大为6位"
  }

}
import Vue from "vue";
import verify from "vue-verify-plugin";
Vue.use(verify,{
  rules:myRules
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jQuery的图片剪切插件
Aug 03 Javascript
javascript中onmouse事件在div中失效问题的解决方法
Jan 09 Javascript
多选列表框动态添加,移动,删除,全选等操作的简单实例
Jan 13 Javascript
JS实现的倒计时效果实例(2则实例)
Dec 23 Javascript
js获取及修改网页背景色和字体色的方法
Dec 29 Javascript
jQuery qrcode生成二维码的方法
Apr 03 Javascript
require.js中的define函数详解
Jul 10 Javascript
ES6关于Promise的用法详解
May 07 Javascript
JS实现匀速与减速缓慢运动的动画效果封装示例
Aug 27 Javascript
Angular刷新当前页面的实现方法
Nov 21 Javascript
JavaScript使用闭包模仿块级作用域操作示例
Jan 21 Javascript
基于Vue 实现一个中规中矩loading组件
Apr 03 Javascript
纯JS实现图片验证码功能并兼容IE6-8(推荐)
Apr 19 #Javascript
Vue.js仿Metronic高级表格(二)数据渲染
Apr 19 #Javascript
JavaScript实现前端分页控件
Apr 19 #Javascript
vue动态生成dom并且自动绑定事件
Apr 19 #Javascript
Vue响应式原理详解
Apr 18 #Javascript
详解vue-router基本使用
Apr 18 #Javascript
Vue键盘事件用法总结
Apr 18 #Javascript
You might like
PHP函数常用用法小结
2010/02/08 PHP
php中mail函数发送邮件失败的解决方法
2014/12/24 PHP
纯CSS3实现质感细腻丝滑按钮
2021/03/09 HTML / CSS
Javascript将string类型转换int类型
2010/12/09 Javascript
防止文件缓存的js代码
2013/01/10 Javascript
JS中的this变量的使用介绍
2013/10/21 Javascript
JS自定义对象实现Java中Map对象功能的方法
2015/01/20 Javascript
javascript动态设置样式style实例分析
2015/05/13 Javascript
JavaScript实现可拖拽的拖动层Div实例
2015/08/05 Javascript
后端接收不到AngularJs中$http.post发送的数据原因分析及解决办法
2016/07/05 Javascript
JS简单实现获取元素的封装操作示例
2017/04/07 Javascript
vue2.x select2 指令封装详解
2017/10/12 Javascript
解决淘宝cnpm 安装后cnpm不是内部或外部命令的问题
2018/05/17 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
2018/07/31 Javascript
js实现日历
2020/11/07 Javascript
python使用fork实现守护进程的方法
2017/11/16 Python
如何使用 Pylint 来规范 Python 代码风格(来自IBM)
2018/04/06 Python
Django 忘记管理员或忘记管理员密码 重设登录密码的方法
2018/05/30 Python
对python requests发送json格式数据的实例详解
2018/12/19 Python
Python Django中间件,中间件函数,全局异常处理操作示例
2019/11/08 Python
python实现小世界网络生成
2019/11/21 Python
python手写均值滤波
2020/02/19 Python
Python读取文件内容为字符串的方法(多种方法详解)
2020/03/04 Python
django实现后台显示媒体文件
2020/04/07 Python
Python smtp邮件发送模块用法教程
2020/06/15 Python
canvas使用注意点总结
2013/07/19 HTML / CSS
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
招商业务员岗位职责
2013/12/16 职场文书
教师求职信范文分享
2013/12/27 职场文书
运动会广播稿200字
2014/10/18 职场文书
拾金不昧通报表扬范文
2015/05/05 职场文书
《岳阳楼记》原文、译文赏析
2019/09/10 职场文书
nginx安装以及配置的详细过程记录
2021/09/15 Servers
解决WINDOWS电脑开机后桌面没有任何图标
2022/04/09 数码科技
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
2022/04/29 Servers
kubernetes集群搭建Zabbix监控平台的详细过程
2022/07/07 Servers