async-validator icon indicating copy to clipboard operation
async-validator copied to clipboard

表单字段验证不支持多种类型

Open tylerchen opened this issue 7 years ago • 5 comments

当表单的字段有多种类型时,抛出错误:

 Error: Unknown rule type object,string

声明的难规则如下:

 rules="{'type':['object', 'string']}"

问题代码:

getType: function getType(rule) {
    if (rule.type === undefined && rule.pattern instanceof RegExp) {
      rule.type = 'pattern';
    }
    if (typeof rule.validator !== 'function' && rule.type && !_validator2["default"].hasOwnProperty(rule.type)) {
      throw new Error((0, _util.format)('Unknown rule type %s', rule.type));
    }
    return rule.type || 'string';
  }

tylerchen avatar Apr 25 '17 07:04 tylerchen

我也遇到同样问题 有解决方案吗

wq0923 avatar Jul 06 '17 03:07 wq0923

直接用 pattern 正则表达式验证,使用 pattern 后会忽略 type 验证

co-kevin avatar Jul 06 '17 03:07 co-kevin

可是用pattern的话 怎么兼顾required必填验证呢

wq0923 avatar Jul 06 '17 03:07 wq0923

required 和 pattern 可以同时使用

{ required: true, message: '这是必填项', trigger: 'blur', pattern: /^.*$/ }

co-kevin avatar Jul 06 '17 03:07 co-kevin

十分感谢!

wq0923 avatar Jul 06 '17 03:07 wq0923