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 相关文章推荐
jquery操作checked属性以及disabled属性的多种方法
Jun 20 Javascript
JavaScript分页功能的实现方法
Apr 25 Javascript
JQuery球队选择实例
May 18 Javascript
javascript实现页面刷新时自动清空表单并选中的方法
Jul 18 Javascript
js表单中选择框值的获取及表单的序列化
Dec 17 Javascript
jqueryMobile使用示例分享
Jan 12 Javascript
JavaScript中 ES6 generator数据类型详解
Aug 11 Javascript
关于react-router的几种配置方式详解
Jul 24 Javascript
JS实现简单短信验证码界面
Aug 07 Javascript
微信小程序实现日历功能
Nov 27 Javascript
jquery拖拽自动排序插件使用方法详解
Jul 20 jQuery
JS+HTML5本地存储Localstorage实现注册登录及验证功能示例
Feb 10 Javascript
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
使用MaxMind 根据IP地址对访问者定位
2006/10/09 PHP
一个php作的文本留言本的例子(六)
2006/10/09 PHP
MySql数据库查询结果用表格输出PHP代码示例
2015/03/20 PHP
用js实现的模拟jquery的animate自定义动画(2.5K)
2010/07/20 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
ie8 不支持new Date(2012-11-10)问题的解决方法
2013/07/31 Javascript
JAVASCRIPT模式窗口中下载文件无法接收iframe的流
2013/10/11 Javascript
客户端js性能优化小技巧整理
2013/11/05 Javascript
浅谈JS日期(Date)处理函数
2014/12/07 Javascript
JavaScript时间转换处理函数
2015/04/14 Javascript
javascript下使用Promise封装FileReader
2016/02/19 Javascript
干货!教大家如何选择Vue和React
2017/03/13 Javascript
js定时器+简单的动画效果实例
2017/11/10 Javascript
详解React 在服务端渲染的实现
2017/11/16 Javascript
Vue实现表格批量审核功能实例代码
2019/05/28 Javascript
JavaScript运行机制实例分析
2020/04/11 Javascript
Nuxt 项目性能优化调研分析
2020/11/07 Javascript
[03:38]TI4西雅图DOTA2前线报道 71专访
2014/07/08 DOTA
Python操作Mysql实例代码教程在线版(查询手册)
2013/02/18 Python
python在ubuntu中的几种安装方法(小结)
2017/12/08 Python
python爬虫爬取某站上海租房图片
2018/02/04 Python
NumPy.npy与pandas DataFrame的实例讲解
2018/07/09 Python
CentOS7下python3.7.0安装教程
2018/07/30 Python
python使用sessions模拟登录淘宝的方式
2019/08/16 Python
pytorch对梯度进行可视化进行梯度检查教程
2020/02/04 Python
python词云库wordCloud使用方法详解(解决中文乱码)
2020/02/17 Python
Python修改列表值问题解决方案
2020/03/06 Python
美国领先的户外服装与装备用品店:Moosejaw
2016/08/25 全球购物
非凡女性奢华谦虚风格:The Modist
2017/10/28 全球购物
人力资源专员自我评价怎么写
2013/09/19 职场文书
冰淇淋店创业计划书范文
2013/12/27 职场文书
2014年房地产个人工作总结
2014/12/20 职场文书
办公室规章制度范本
2015/08/04 职场文书
python实现高效的遗传算法
2021/04/07 Python
Python基于百度API识别并提取图片中文字
2021/06/27 Python
Python集合的基础操作
2021/11/01 Python