async-validator 异步请求验证使用

异步请求验证

Attention: asyncValidator 是1.11.0 才支持的,而我下文的结论源于我自己使用了1.8.0 的版本,故而失败,请知悉!!
参考github 项目:async-validator

// PROMISE USAGE
validator.validate({
  name: "muji",
  asyncValidator: (rule, value) => axios.post('/nameValidator', { name: value }),
}, (errors, fields) => {
  if(errors) {
    // validation failed, errors is an array of all errors
    // fields is an object keyed by field name with an array of
    // errors per field
    return handleErrors(errors, fields);
  }
  // validation passed
})
  .then(() => {
    // validation passed
  })
  .catch(({ errors, fields }) => {
    return handleErrors(errors, fields);
  })

如上readme 中一直说使用asyncValidator, 所以一直以为接收asyncValidator作为关键字,结果试了很久就是不行。其实还是使用validator关键字就行。具体使用如下就行…

使用定义
validatorFieldRule: [
          { required:true, validator: checkEmpty, trigger: "change"} ]
验证规则定义
var checkEmpty= (rule, value, callback) => {
      axios.get('/api/file').then( res => {
          callback();
      })
      .catch( err => {
          callback(err);
      })
    };
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值