详解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 相关文章推荐
div层的移动及性能优化
Nov 16 Javascript
jquery实现带单选按钮的表格行选中时高亮显示
Aug 01 Javascript
js函数模拟显示桌面.scf程序示例
Apr 20 Javascript
易被忽视的js事件问题总结
May 14 Javascript
JS常用正则表达式总结【经典】
May 12 Javascript
Angular 2父子组件之间共享服务通信的实现
Jul 04 Javascript
Angular X中使用ngrx的方法详解(附源码)
Jul 10 Javascript
Node.js 的 GC 机制详解
Jun 03 Javascript
JavaScript中Dom操作实例详解
Jul 08 Javascript
jqGrid表格底部汇总、合计行footerrow处理
Aug 21 Javascript
js 压缩图片的示例(只缩小体积,不更改图片尺寸)
Oct 21 Javascript
JavaScript实现网页留言板功能
Nov 23 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面向对象法则
2012/02/23 PHP
php解决抢购秒杀抽奖等大流量并发入库导致的库存负数的问题
2014/06/19 PHP
PHP下的浮点运算不准的解决方法
2016/10/27 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
JQuery 解析多维的Json数据格式
2009/11/02 Javascript
jquery ajax学习笔记2 使用XMLHttpRequest对象的responseXML
2011/10/16 Javascript
字符串的replace方法应用浅析
2011/12/06 Javascript
javascript编码的几个方法详细介绍
2013/01/06 Javascript
JavaScript中setAttribute用法介绍
2013/07/20 Javascript
jQuery操作input值的各种方法总结
2013/11/21 Javascript
setTimeout内不支持jquery的选择器的解决方案
2015/04/28 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖放商品放置购物车
2015/11/30 Javascript
jQuery弹簧插件编写基础之“又见弹窗”
2015/12/11 Javascript
学习JavaScript设计模式之中介者模式
2016/01/14 Javascript
JQuery动态添加Select的Option元素实现方法
2016/08/29 Javascript
js html css实现复选框全选与反选
2016/10/09 Javascript
javascript笔记之匿名函数和闭包
2017/02/06 Javascript
Angular.Js中过滤器filter与自定义过滤器filter实例详解
2017/05/08 Javascript
bootstrap中日历范围选择插件daterangepicker的使用详解
2018/04/17 Javascript
vuejs+element UI table表格中实现禁用部分复选框的方法
2019/09/20 Javascript
Vue中key的作用示例代码详解
2020/06/10 Javascript
JS JQuery获取data-*属性值方法解析
2020/09/01 jQuery
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
TensorFlow实现Logistic回归
2018/09/07 Python
Python面向对象进阶学习
2019/05/21 Python
Python 绘制酷炫的三维图步骤详解
2019/07/12 Python
Python 字符串类型列表转换成真正列表类型过程解析
2019/08/26 Python
python读取xml文件方法解析
2020/08/04 Python
自我鉴定怎么写
2013/12/05 职场文书
公司年会策划方案
2014/05/17 职场文书
2014年个人教学工作总结
2014/12/09 职场文书
开国大典观后感
2015/06/04 职场文书
飞越疯人院观后感
2015/06/09 职场文书
2015年市场营销工作总结
2015/07/23 职场文书
会计岗位工作总结
2015/08/12 职场文书
多人股份制合作协议书
2016/03/19 职场文书