全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解vee-validate的使用个人小结

学习vee-validate,首先可以去阅读官方文档,更为详细可以阅读官网中的规则。英文文档可能会有不理解的地方,推荐大家看这篇博客

下面来简单总结一下我的使用:

一、安装

npm install vee-validate@next --save

后面加@next是为了安装vue2.0的版本

二、引入

我使用的是vue-cli脚手架工具,需要在main.js中

import VeeValidate from 'vee-validate'

Vue.use(VeeValidate);

三、简单的使用

这个时候其实已经可以使用了,先上demo

  <div>
    <label for="email">邮箱:</label>
    <input v-validate ="'required|email'" type="text" id="email" name="myEmail">
  </div>
  <span v-show="errors.has('myEmail')">{{ errors.first('myEmail')}}</span>

解释一下:v-validate后面的required和email是官方已经规定好的几种默认错误类型中的两个,这个可以阅读官方文档。
span中用到了errors的几个方法,这里的参数都是定义了验证规则的表单的name。列举几个errors的方法:

1、first(‘field')

field中(也就是刚刚说过的name表单)中的第一个错误

2、collect(‘field')

field中所有的错误

3、has(‘field')

field中是否有错误

4、all()

当前表单中的所有错误

5、any()

当前表单中是否有错误

6、count()

当前表单中的错误数量

7、clear()

清除当前表单中的所有错误

四、使用中文错误提示

没有配置过的错误提示默认使用英文显示的,如果想要用中文显示需要我们手动配置一下

首先还是在main.js中引入

import zh_CN from 'vee-validate/dist/locale/zh_CN'
import { Validator } from 'vee-validate';

紧接着再加一句

Validator.addLocale(zh_CN);

最后需要把第一步的Vue.use(VeeValidate)改为

Vue.use(VeeValidate, {
 locale: 'zh_CN',
});

现在错误提示已经是中文了

五、配置组件

上一点中的配置中文其实已经是对组件的配置了,再说一说其他的配置。

//配置
const config = {
 errorBagName: 'errors', // change if property conflicts.
 fieldsBagName: 'fields',
 delay: 0,
 locale: 'zh_CN',
 strict: true,
 enableAutoClasses: false,
 classNames: {
  touched: 'touched', // the control has been blurred
  untouched: 'untouched', // the control hasn't been blurred
  valid: 'valid', // model is valid
  invalid: 'invalid', // model is invalid
  pristine: 'pristine', // control has not been interacted with
  dirty: 'dirty' // control has been interacted with
 },
 events: 'blur',
 inject: true
};
Vue.use(VeeValidate, config);

delay是指对错误提示的延迟时间;locale就是上一点中对中文的配置,只是这里统一写到了config中;strict=true代表没有设置规则的表单不进行校验,events默认是input|blur,就是在用户输入和表单失去焦点时都进行校验,这里我改成了blur,即只有失去焦点时才开始验证。

五、修改默认的错误提示信息

//修改默认错误提示
const dictionary = {
 zh_CN: {
  messages: {
   email: () => '邮箱格式不正确哦'
  }
 }
};
Validator.updateDictionary(dictionary);

demo中修改了email的错误提示信息,因为使用的中文(前面引入的),所以是zh_CN。最后用updateDictionary方法加入到Validator中。

六、自定义规则

Validator.extend('qq', {
 messages: {
  zh_CN:field => 'qq号码输入不正确'
 },
 validate: value => {
  return /^[1-9][0-9]{4,14}$/.test(value);
 }
});

extend的第一个参数就是自定义的规则的名字,可以像使用默认规则一样使用它,messages中是错误提示信息,validate是验证规则,返回一个布尔值或promise.

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


# vee  # validate  # veevalidate  # validate使用  # Vue2.0表单校验组件vee-validate的使用详解  # Vee-Validate的使用方法详解  # 表单  # 错误提示  # 提示信息  # 几个  # 第一个  # 英文  # 自定义  # 文档  # 不正确  # 有错误  # 的是  # 都是  # 是在  # 会有  # 一句  # 是指  # 其他的  # 说过  # 几种  # 这个时候 


相关文章: 如何高效生成建站之星成品网站源码?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  微信推文制作网站有哪些,怎么做微信推文,急?  如何在阿里云香港服务器快速搭建网站?  建站主机选哪家性价比最高?  开源网站制作软件,开源网站什么意思?  怀化网站制作公司,怀化新生儿上户网上办理流程?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  建站主机选虚拟主机还是云服务器更好?  jQuery 常见小例汇总  建站之星后台密码遗忘?如何快速找回?  如何快速查询网站的真实建站时间?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  建站之星ASP如何实现CMS高效搭建与安全管理?  招贴海报怎么做,什么是海报招贴?  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  如何在局域网内绑定自建网站域名?  如何用IIS7快速搭建并优化网站站点?  宿州网站制作公司兴策,安徽省低保查询网站?  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  制作营销网站公司,淘特是干什么用的?  北京专业网站制作设计师招聘,北京白云观官方网站?  家具网站制作软件,家具厂怎么跑业务?  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  如何在万网开始建站?分步指南解析  香港服务器网站卡顿?如何解决网络延迟与负载问题?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  如何在景安云服务器上绑定域名并配置虚拟主机?  Swift中循环语句中的转移语句 break 和 continue  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  制作网站的软件免费下载,免费制作app哪个平台好?  建站之星后台管理系统如何操作?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  如何在云服务器上快速搭建个人网站?  装修招标网站设计制作流程,装修招标流程?  已有域名建站全流程解析:网站搭建步骤与建站工具选择  如何通过西部数码建站助手快速创建专业网站?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  C++中引用和指针有什么区别?(代码说明)  建站之星下载版如何获取与安装?  存储型VPS适合搭建中小型网站吗?  建站DNS解析失败?如何正确配置域名服务器?  建站主机系统SEO优化与智能配置核心关键词操作指南  代购小票制作网站有哪些,购物小票的简要说明?  h5网站制作工具有哪些,h5页面制作工具有哪些? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。