博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue如何使用rules对表单字段进行校验
阅读量:6387 次
发布时间:2019-06-23

本文共 2220 字,大约阅读时间需要 7 分钟。

  hot3.png

基于element-ui

1、在代码中,添加属性::rule

并且,在
中添加prop属性,对应rules中的规则

 

 

 

2、新开一个文件夹(validate.js)定义验证规则

 

3、在页面(index.vue)中引入验证规则定义的文件,并在export default中定义rule规则,使用语法:{validator:验证方法,trigger:验证触发}

  

 

3、以下是validator.js文件的部分验证方法

/* 是否是公司邮箱*/export function isWscnEmail(str) {  const reg = /^[a-z0-9](?:[-_.+]?[a-z0-9]+)*@wallstreetcn\.com$/i;  return reg.test(str.trim());}/* 合法uri*/export function validateURL(textval) {  const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/;  return urlregex.test(textval);}// 验证是否整数export function isInteger(rule, value, callback) {  if (!value) {    return callback(new Error('输入不可以为空'));  }  setTimeout(() => {    if (!Number(value)) {      callback(new Error('请输入正整数'));    } else {      const re = /^[0-9]*[1-9][0-9]*$/;      const rsCheck = re.test(value);      if (!rsCheck) {        callback(new Error('请输入正整数'));      } else {        callback();      }    }  }, 1000);}// 验证是否是[0-1]的小数export function isDecimal(rule, value, callback) {  if (!value) {    return callback(new Error('输入不可以为空'));  }  setTimeout(() => {    if (!Number(value)) {      callback(new Error('请输入数字'));    } else {      if (value < 0 || value > 1) {        callback(new Error('请输入[0,1]之间的数字'));      } else {        callback();      }    }  }, 1000);}// 验证端口是否在[0,65535]之间export function isPort(rule, value, callback) {  if (!value) {    return callback(new Error('输入不可以为空'));  }  setTimeout(() => {    if (value == '' || typeof(value) == undefined) {      callback(new Error('请输入端口值'));    } else {      const re = /^([0-9]|[1-9]\d|[1-9]\d{2}|[1-9]\d{3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$/;      const rsCheck = re.test(value);      if (!rsCheck) {        callback(new Error('请输入在[0-65535]之间的端口值'));      } else {        callback();      }    }  }, 1000);}/* 小写字母*/export function validateLowerCase(str) {  const reg = /^[a-z]+$/;  return reg.test(str);}

转载于:https://my.oschina.net/lslDn/blog/1933083

你可能感兴趣的文章
Purism 发布 PureBoot:高度安全、完整的 Linux 引导流程
查看>>
JAVA学习day05
查看>>
行业观察(一)| 从渠道为王到数据为王——浅谈服装零售企业的数字化转型 ...
查看>>
阿里架构师,讲述分布式架构云平台解决方案(附学习路线) ...
查看>>
Android 访问WebService
查看>>
老生常谈 String、StringBuilder、StringBuffer
查看>>
SpringMVC工作原理
查看>>
Apache Flink 漫谈系列(12) - Time Interval(Time-windowed) JOIN ...
查看>>
puppet 执行source
查看>>
东南亚智能金融决策平台Silot完成A 轮融资,SBI 领投 ...
查看>>
真的有人在偷听我们讲话么?
查看>>
Linux基础命令---添加/删除组
查看>>
java b2b2c shop 多用户商城系统源码- eureka集群整合hystrix框架
查看>>
spring之旅第四篇-注解配置详解
查看>>
Flutter 28: 图解 ListView/GridView 混用时滑动冲突小尝试
查看>>
Spring读取配置文件,获取bean的几种方式
查看>>
在巴塞罗那,华为挥别昨日 | MWC 2019
查看>>
解决kubernetes中ingress-nginx配置问题
查看>>
蚂蚁金服核心技术:百亿特征实时推荐算法揭秘
查看>>
【直播回顾】云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第19讲):Java Spring Cloud微服务架构模式与开发实战...
查看>>