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 相关文章推荐
XmlUtils JS操作XML工具类
Oct 01 Javascript
js冒泡法和数组转换成字符串示例代码
Aug 14 Javascript
vue+element实现批量删除功能的示例
Feb 28 Javascript
vue-router3.0版本中 router.push 不能刷新页面的问题
May 10 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
Aug 08 Javascript
详解几十行代码实现一个vue的状态管理
Jan 28 Javascript
react的滑动图片验证码组件的示例代码
Feb 27 Javascript
解决ie11 SCRIPT5011:不能执行已释放Script的代码问题
May 05 Javascript
js中值引用和地址引用实例分析
Jun 21 Javascript
原生js无缝轮播插件使用详解
Mar 09 Javascript
javascript-hashchange事件和历史状态管理实例分析
Apr 18 Javascript
Nuxt的路由动画效果案例
Nov 06 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
zf框架的registry(注册表)使用示例
2014/03/13 PHP
php递归实现无限分类的方法
2015/07/28 PHP
dreamweaver 8实现Jquery自动提示
2014/12/04 Javascript
js实现用户注册协议倒计时的方法
2015/01/21 Javascript
在JavaScript中处理时间之setMinutes()方法的使用
2015/06/11 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
详解JS中的attribute属性
2017/04/25 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
js实现网页的两个input标签内的数值加减(示例代码)
2017/08/15 Javascript
详解Js中的模块化是如何实现的
2017/10/18 Javascript
详解Vue CLI3配置之filenameHashing使用和源码设计使用和源码设计
2018/08/31 Javascript
基于element-ui的rules中正则表达式
2018/09/04 Javascript
详解vue-cli+element-ui树形表格(多级表格折腾小计)
2019/04/17 Javascript
nodejs环境使用Typeorm连接查询Oracle数据
2019/12/05 NodeJs
JavaScrip如果基于url实现图片下载
2020/07/03 Javascript
简析Python的闭包和装饰器
2016/02/26 Python
深入浅析ImageMagick命令执行漏洞
2016/10/11 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
NumPy 数学函数及代数运算的实现代码
2018/07/18 Python
python中字符串内置函数的用法总结
2018/09/13 Python
Python清空文件并替换内容的实例
2018/10/22 Python
Python3安装Pillow与PIL的方法
2019/04/03 Python
PyCharm专业最新版2019.1安装步骤(含激活码)
2019/10/09 Python
Python读取excel文件中带公式的值的实现
2020/04/17 Python
python读取excel数据绘制简单曲线图的完整步骤记录
2020/10/30 Python
世界首屈一指的在线男士内衣权威:HisRoom
2017/08/05 全球购物
SteelSeries赛睿官网:游戏外设和配件的领先制造商(耳机、键盘、鼠标和鼠标垫)
2018/06/17 全球购物
世界顶级户外运动品牌折扣网站:LeftLane Sports
2019/06/12 全球购物
轻金属冶金专业毕业生自荐信
2013/11/02 职场文书
经典广告词大全
2014/03/14 职场文书
门卫岗位职责说明书
2014/08/18 职场文书
公务员爱岗敬业演讲稿
2014/08/26 职场文书
优秀教师推荐材料
2014/12/16 职场文书
护士求职自荐信范文
2015/03/04 职场文书
大学生入党自荐书
2015/03/05 职场文书
MySQL安装失败的原因及解决步骤
2022/06/14 MySQL