详解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 toolbar与网页浮动工具条具体实现代码
Jan 12 Javascript
jQuery图片轮播实现并封装(一)
Dec 03 Javascript
JS Select下拉框(支持输入模糊查询)
Feb 04 Javascript
JavaScript控制输入框中只能输入中文、数字和英文的方法【基于正则实现】
Mar 03 Javascript
jQuery简单实现MD5加密的方法
Mar 03 Javascript
无循环 JavaScript(map、reduce、filter和find)
Apr 08 Javascript
node.js中debug模块的简单介绍与使用
Apr 25 Javascript
jQuery操作DOM_动力节点Java学院整理
Jul 04 jQuery
vue使用axios实现文件上传进度的实时更新详解
Dec 20 Javascript
javaScript 连接打印机,打印小票的实例
Dec 29 Javascript
Angular4集成ng2-file-upload的上传组件
Mar 14 Javascript
element-ui表格合并span-method的实现方法
May 21 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
让你的WINDOWS同时支持MYSQL4,MYSQL4.1,MYSQL5X
2006/12/06 PHP
php数组中包含中文的排序方法
2014/06/03 PHP
php中常量DIRECTORY_SEPARATOR用法深入分析
2014/11/14 PHP
PHP间隔一段时间执行代码的方法
2014/12/02 PHP
PHP的关于变量和日期处理的一些面试题目整理
2015/08/10 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
JQuery 无废话系列教程(一) jquery入门 [推荐]
2009/06/23 Javascript
js 字符串操作函数
2009/07/25 Javascript
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
JS来动态的修改url实现对url的增删查改
2014/09/05 Javascript
JavaScript中使用Math.floor()方法对数字取整
2015/06/15 Javascript
JS中Json数据的处理和解析JSON数据的方法详解
2016/06/29 Javascript
jQuery动态添加与删除tr行实例代码
2016/10/18 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
2016/10/28 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
jQuery的时间datetime控件在AngularJs中的使用实例(分享)
2017/08/17 jQuery
微信小程序清空输入框信息与实现屏幕往上滚动的示例代码
2020/06/23 Javascript
JS实现密码框效果
2020/09/10 Javascript
[15:07]lgd_OG_m2_BP
2019/09/10 DOTA
Python爬虫文件下载图文教程
2018/12/23 Python
Python3删除排序数组中重复项的方法分析
2019/01/31 Python
python常用数据重复项处理方法
2019/11/22 Python
详解tensorflow之过拟合问题实战
2020/11/01 Python
真正了解CSS3背景下的@font face规则
2017/05/04 HTML / CSS
HTML5 canvas基本绘图之绘制矩形
2016/06/27 HTML / CSS
.net软件工程师面试题
2015/03/31 面试题
为什么说Ruby是一种真正的面向对象程序设计语言
2012/10/30 面试题
高三地理教学反思
2014/01/11 职场文书
文秘大学生求职信
2014/02/25 职场文书
《风筝》教学反思
2014/04/10 职场文书
股东协议书
2014/04/14 职场文书
计算机求职信
2014/07/02 职场文书
2015年端午节活动策划书
2015/05/05 职场文书
刑事附带民事起诉状
2015/05/19 职场文书
银行资信证明
2015/06/17 职场文书
MySQL中的布尔值,怎么存储false或true
2021/06/04 MySQL