Vee-Validate的使用方法详解


Posted in Javascript onSeptember 22, 2017

引入:

npm install vee-validate --save

vue代码:

import VeeValidate from 'vee-validate';
import zh_CN from 'vee-validate/dist/locale/zh_CN'; //引入中文包,提示信息可以以中文形式显示
import { Validator } from 'vee-validate';

Validator.addLocale(zh_CN); // 设置提示信息中文方式显示

const config = {
 errorBagName: 'errors', 
 fieldsBagName: 'fields',
 delay: 100,  
 locale: 'zh_CN', 
 strict: true, 
 enableAutoClasses: true,
 events: 'blur', 
 inject: true
};

// 自定义提示信息
const dictionary = {
 zh_CN: {
  messages: {
   ip: () => 'ip格式不正确? >.<'
  }
 }
};
Validator.updateDictionary(dictionary);

// 自定义规则
Validator.extend('qq', {
 messages: {
  zh_CN:field => 'qq号码输入不正确'
 },
 validate: value => {
  return /^[1-9][0-9]{4,14}$/.test(value);
 }
});
Vue.use(VeeValidate, config); //一般插件都要use一下

使用

<label><span>ip:</span><input v-validate="'required|email'" name="email" type="text" v-model="ip"/></label>
<span v-show="errors.first('ip')">{{ errors.first('ip') }}</span>

注意 : name一定要写,否则不会进行验证

config配置信息

插件的一些功能可以自定义,需要编写config,然后Vue.use(VeeValidate, config)来使用
一下为配置信息的意思(可能不全面)

errorBagName: 'erroers'

所有的错误信息都是放在这个里面的,如果名称和页面上的变量名字冲突,需要修改成其他的,当是errors.fist的时候,error就是字符串,当使用error.all()/error.collect()的时候就是数组

fieldsBagName: 'fields'

字段的名称(标志)的对象,将在每个Vue的实例数据注入。如果在页面上使用了ip的验证,那么,可以通过如下获取一个对象:

this.fileds.ip
 >> 获取到的对象:
{
  dirty :true
  invalid:false
  pending:false
  pristine:false
  required:true
  touched:true
  untouched:false
  valid:true
  validated:true
}

delay : 100 表示获取输入信息的时间

locale: ‘zh_CN' 验证消息的默认语言。

strict: true 表示没有设置规则的表单不进行验证

classes (不懂)

events: 'blur|input' 默认是input|blur 就是在用户输入和表单失去焦点的时候都进行验证,blue表示失去焦点的时候进行验证

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

Javascript 相关文章推荐
JavaScript面向对象程序设计三 原型模式(上)
Dec 21 Javascript
javascript 基础篇3 类,回调函数,内置对象,事件处理
Mar 14 Javascript
兼容各大浏览器的JavaScript阻止事件冒泡代码
Jul 09 Javascript
jQuery实现滚动鼠标放大缩小图片的方法(附demo源码下载)
Mar 05 Javascript
Angular中$state.go页面跳转并传递参数的方法
May 09 Javascript
使用原生js封装的ajax实例(兼容jsonp)
Oct 12 Javascript
手把手教你vue-cli单页到多页应用的方法
May 31 Javascript
vue实现动态按钮功能
May 13 Javascript
小程序云开发如何实现图片上传及发表文字
May 17 Javascript
JQuery省市联动效果实现过程详解
May 08 jQuery
vue实现分页的三种效果
Jun 23 Javascript
vue 中this.$set 动态绑定数据的案例讲解
Jan 29 Vue.js
Js中async/await的执行顺序详解
Sep 22 #Javascript
Node.js自定义实现文件路由功能
Sep 22 #Javascript
详解bootstrap用dropdown-menu实现上下文菜单
Sep 22 #Javascript
javascript计算渐变颜色的实例
Sep 22 #Javascript
利用Node.js了解与测量HTTP所花费的时间详解
Sep 22 #Javascript
原生JS实现日历组件的示例代码
Sep 22 #Javascript
BootstrapTable加载按钮功能实例代码详解
Sep 22 #Javascript
You might like
PHP的foreach中使用引用时需要注意的一个问题和解决方法
2014/05/29 PHP
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
jquery的Tooltip插件 qtip使用详细说明
2010/09/08 Javascript
JavaScript 选中文字并响应获取的实现代码
2011/08/28 Javascript
myEvent.js javascript跨浏览器事件框架
2011/10/24 Javascript
用JS在浏览器中创建下载文件
2014/03/05 Javascript
Three.js学习之正交投影照相机
2016/08/01 Javascript
微信小程序 实例开发总结
2017/04/26 Javascript
angular指令笔记ng-options的使用方法
2017/09/18 Javascript
element 结合vue 在表单验证时有值却提示错误的解决办法
2018/01/22 Javascript
express默认日志组件morgan的方法
2018/04/05 Javascript
详解Vue微信授权登录前后端分离较为优雅的解决方案
2018/06/29 Javascript
基于Layui自定义模块的使用方法详解
2019/09/14 Javascript
[01:19]DOTA2城市挑战赛报名开始 开启你的城市传奇
2018/03/23 DOTA
Python使用新浪微博API发送微博的例子
2014/04/10 Python
详解Python中的__new__()方法的使用
2015/04/09 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
python实现植物大战僵尸游戏实例代码
2019/06/10 Python
Python如何爬取微信公众号文章和评论(基于 Fiddler 抓包分析)
2019/06/28 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
2020/04/08 Python
python退出循环的方法
2020/06/18 Python
Node.js 和 Python之间该选择哪个?
2020/08/05 Python
Python unittest装饰器实现原理及代码
2020/09/08 Python
HTML5在a标签内放置块级元素示例代码
2013/08/23 HTML / CSS
耐克亚太地区:Nike APAC
2019/12/07 全球购物
美国最大的在线生存商店:Survival Frog
2020/12/13 全球购物
巴西购物网站:Onofre Agora
2020/06/08 全球购物
Java如何格式化日期
2012/08/07 面试题
初中生个人学习的自我评价
2013/12/04 职场文书
预备党员思想汇报范文
2013/12/29 职场文书
文明餐桌活动方案
2014/02/11 职场文书
超市开店计划书
2014/04/26 职场文书
八荣八耻演讲稿
2014/09/15 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
民主生活会意见
2015/06/05 职场文书