Async Validator 异步验证使用说明


Posted in Javascript onJuly 03, 2017

async-validator 是一个异步验证的库,需要传入要验证的数据和验证规则

官方链接 https://github.com/yiminghe/async-validator

要检验的数据,格式要求如下:

{
 a:xxx,
 b:xxx
}

检验规则定义格式如下:

{
 a:[
  {验证规则, message: 'xxx'},
  {验证规则, message: 'xxx'}
 ],
 b:[
  {验证规则, message: 'xxx'}
 ]
}

message是规则没通过时返回的错误消息

举个例子, 因为是异步验证,所以我们用ES6 的 Promise去调用它,方便使用

var inputData = {'item':'12345'}
var rules = [
 {required: true, message: '年龄不能为空'},
 {type: 'number', message: '年龄必须为数字值'}
]
function validateData() {
 var validateRuler = new Promise(function (resolve, reject) {
 var validator = new AsyncValidator(rules)
 validator.validate(inputData, { firstFields: true }, (errors, fields) => {
  resolve(errors)
 })
 return validateRuler
}
function validate() {
 validateData().then(function (errors) {
  console.log(errors)
  if (errors === null) {
    // 通过验证,该干嘛干嘛
  } else {
    // 把验证结果展示在页面上
  }
 })
}
validate()

如果验证没通过是这样

通过了则返回 null

需要注意的是,如果传入的规则是空数组

上面的resolve(errors)是完全不会执行的

以上所述是小编给大家介绍的Async Validator 异步验证使用说明,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript绝句欣赏 一些经典的js代码
Feb 22 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
Oct 23 Javascript
javascript实现的一个带下拉框功能的文本框
May 08 Javascript
javascript动态控制服务器控件实例
Sep 05 Javascript
jQuery实现点击该行即可删除HTML表格行
Oct 17 Javascript
Bootstrap表单使用方法详解
Feb 17 Javascript
vue.js的安装方法
May 12 Javascript
JavaScript中使用Async实现异步控制
Aug 15 Javascript
js判断数组是否包含某个字符串变量的实例
Nov 24 Javascript
js实现图片区域可点击大小随意改变(适用移动端)代码实例
Sep 11 Javascript
Node.js操作MongoDB数据库实例分析
Jan 19 Javascript
何时使用Map来代替普通的JS对象
Apr 29 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
Jul 03 #Javascript
Require.js的基本用法详解
Jul 03 #Javascript
React利用插件和不用插件实现双向绑定的方法详解
Jul 03 #Javascript
解决webpack -p压缩打包react报语法错误的方法
Jul 03 #Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
Jul 03 #Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
Jul 03 #Javascript
微信小程序开发中的疑问解答汇总
Jul 03 #Javascript
You might like
php读取30天之内的根据算法排序的代码
2008/04/06 PHP
PHP中文件缓存转内存缓存的方法
2011/12/06 PHP
Zend Studio去除编辑器的语法警告设置方法
2012/10/24 PHP
深入PHP empty(),isset(),is_null()的实例测试详解
2013/06/06 PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
2016/09/19 PHP
详解PHP处理密码的几种方式
2016/11/30 PHP
用PHP的反射实现委托模式的讲解
2019/03/22 PHP
JS实现局部选择打印和局部不选择打印
2014/04/03 Javascript
jQuery中Ajax的get、post等方法详解
2015/01/20 Javascript
javascript中FOREACH数组方法使用示例
2016/03/01 Javascript
封装获取dom元素的简单实例
2016/07/08 Javascript
JS仿hao123导航页面图片轮播效果
2016/09/01 Javascript
解决AngualrJS页面刷新导致异常显示问题
2017/04/20 Javascript
js实现倒计时关键代码
2017/05/05 Javascript
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
js实现跟随鼠标移动的小球
2019/08/26 Javascript
seajs和requirejs模块化简单案例分析
2019/08/26 Javascript
Vuex实现数据共享的方法
2019/12/20 Javascript
深入浅析Python中join 和 split详解(推荐)
2016/06/30 Python
Python操作使用MySQL数据库的实例代码
2017/05/25 Python
Python实现的用户登录系统功能示例
2018/02/05 Python
pandas使用get_dummies进行one-hot编码的方法
2018/07/10 Python
python 实现Flask中返回图片流给前端展示
2020/01/09 Python
Keras实现支持masking的Flatten层代码
2020/06/16 Python
浅析Python的命名空间与作用域
2020/11/25 Python
CSS实现限制字数功能当对象内文本溢出时显示省略标记
2014/08/20 HTML / CSS
CSS3中使用RGBA设置透明度的示例
2015/08/04 HTML / CSS
Stuart Weitzman欧盟:美国奢华鞋履品牌
2017/05/24 全球购物
办公室前台岗位职责范本
2013/12/10 职场文书
运动会领导邀请函
2014/01/10 职场文书
房产协议书范本2014
2014/09/30 职场文书
2015年科协工作总结
2015/05/19 职场文书
技术入股合作协议书
2016/03/21 职场文书
Linux、ubuntu系统下查看显卡型号、显卡信息详解
2022/04/07 Servers
Android中的Launch Mode详情
2022/06/05 Java/Android