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 css的使用介绍
Apr 18 Javascript
express的中间件bodyParser详解
Dec 04 Javascript
jQuery验证插件validation使用指南
Apr 21 Javascript
在Node.js应用中使用Redis的方法简介
Jun 24 Javascript
Bootstrap每天必学之标签页(Tab)插件
Aug 09 Javascript
JS基于正则截取替换特定字符之间字符串操作示例
Feb 03 Javascript
vue页面切换到滚动页面显示顶部的实例
Mar 13 Javascript
angular中两种表单的区别(响应式和模板驱动表单)
Dec 06 Javascript
详解vue项目中实现图片裁剪功能
Jun 07 Javascript
vue 自动化路由实现代码
Sep 03 Javascript
解决ant Design中Select设置initialValue时的大坑
Oct 29 Javascript
浅谈JS的二进制家族
May 09 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
文件系统基本操作类
2006/11/23 PHP
php 分库分表hash算法
2009/11/12 PHP
php实现删除指定目录下相关文件的方法
2014/10/20 PHP
php常用hash加密函数
2014/11/22 PHP
PHP Yii框架之表单验证规则大全
2015/11/16 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
2020/04/05 PHP
jquery中ajax学习笔记3
2011/10/16 Javascript
jquery实现带复选框的表格行选中删除时高亮显示
2013/08/01 Javascript
JSONObject使用方法详解
2015/12/17 Javascript
AngularJs 指令详解及示例代码
2016/09/01 Javascript
JS实现复制内容到剪贴板功能
2017/02/05 Javascript
使用get方式提交表单在地址栏里面不显示提交信息
2017/02/21 Javascript
Angular 2父子组件数据传递之局部变量获取子组件其他成员
2017/07/04 Javascript
Bootstrap Table 删除和批量删除
2017/09/22 Javascript
详解vue 实例方法和数据
2017/10/23 Javascript
nginx部署访问vue-cli搭建的项目的方法
2018/02/12 Javascript
详解webpack2异步加载套路
2018/09/14 Javascript
150行Node.js实现的dns代理工具
2019/08/02 Javascript
layui table表格数据的新增,修改,删除,查询,双击获取行数据方式
2019/11/14 Javascript
如何利用nodejs自动定时发送邮件提醒(超实用)
2020/12/01 NodeJs
[01:05:56]Liquid vs VP Supermajor决赛 BO 第二场 6.10
2018/07/04 DOTA
浅谈Python中eval的强大与危害
2019/03/13 Python
Python3实现的旋转矩阵图像算法示例
2019/04/03 Python
python字典排序的方法
2019/10/12 Python
Python爬取微信小程序通用方法代码实例详解
2020/09/29 Python
python UIAutomator2使用超详细教程
2021/02/19 Python
boostrap modal 闪现问题的解决方法
2020/09/01 HTML / CSS
日本运动品牌美津浓官方购物网站:MIZUNO SHOP
2016/08/21 全球购物
Microsoft Advertising美国:微软搜索广告
2019/05/01 全球购物
美国户外烹饪产品购物网站:Outdoor Cooking
2020/01/10 全球购物
介绍一下mysql的日期和时间函数
2013/03/28 面试题
信用社竞聘演讲稿
2014/05/16 职场文书
入党申请书怎么写?
2019/06/21 职场文书
MySQL锁机制
2021/04/05 MySQL
Windows11性能真的上涨35%? 桌面酷睿i9实测结果公开
2021/11/21 数码科技
Mysql事务索引知识汇总
2022/03/17 MySQL