成都网站建设设计

将想法与焦点和您一起共享

vue中veevalidate表单校验的示例分析

这篇文章主要为大家展示了“vue中vee validate表单校验的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue中vee validate表单校验的示例分析”这篇文章吧。

创新互联专注于企业全网营销推广、网站重做改版、凤台网站定制设计、自适应品牌网站建设、H5技术商城网站开发、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为凤台等各大城市提供网站开发制作服务。

1.必填和长度校验

直接采用v-validate属性进行配置,不同的校验采用 ‘|' 隔开。是否有报错根据 errors.has('userName') 进行判断,‘userName'对应的是表单的name属性的值。

errors.first('userName)会展示表单校验中第一个错误信息。

 
  
 
 
  
  {{ errors.first('userName') }}
 

结果如下:

vue中vee validate表单校验的示例分析

从结果我们可以看到,校验的错误信息是展示了,但是默认都是英文的,这个可能有时跟我们实际开发的需求不是一致的。这个我们可以采用

vee-validate的国际化去进行中文的展示。但是这里我要介绍的是另一种方式,如果是系统只需要支持一种语言,我觉得用这种方式就可以。

直接采用 errors.first('userName:required') 即 ‘字段名:校验规则'  的方式进行判断进而展示对应提示信息的方式。这个方式可以让表单在对应校验不通过时展示我们自己定义对应的个性化提示信息。

优点是:配置简单,方便实现个性化提示。


  


  
  用户名为必填项
  用户名的最小长度为2
  用户名的最大长度为20

 2.异步校验 和延迟

异步校验,主要就是两部分,一个是校验器的定义,一个是使用

定义部分:

import { Validator } from 'vee-validate';
const emailsDB = [
 'abcd@cc.com'
];
const isUnique = value => new Promise((resolve) => {
 setTimeout(() => {
  if (emailsDB.indexOf(value) === -1) {
   return resolve({
    valid: true
   });
  }

  return resolve({
   valid: false,
   data: {
    message: `${value} 已存在.`
   }
  });
 }, 200);
});
Validator.extend('unique', {
 validate: isUnique,
 getMessage: (field, params, data) => data.message
});

使用:

 
  
 
 
  
  重复
 

结果:

vue中vee validate表单校验的示例分析

其中  data-vv-delay="1000"  就是延迟校验的使用。1000即1000毫秒

以下是几个例子的完整代码:




.form-label {
 text-align: right;
 padding-right: 10px;
}
.error {
 color: red;
}

以上是“vue中vee validate表单校验的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


文章标题:vue中veevalidate表单校验的示例分析
路径分享:http://chengdu.cdxwcx.cn/article/pihsch.html