覆盖默认的angular2验证器

时间:2016-08-04 16:23:15

标签: validation angular dart

我想为pattern类型的文本创建<input>验证的可绑定版本。这是代码:

const CUSTOM_PATTERN_VALIDATOR = const Provider(NG_VALIDATORS, useExisting: CustomPatternValidator, multi: true);

@Directive(
    selector:
    "[pattern][ngControl],[pattern][ngFormControl],[pattern][ngModel]",
    providers: const [CUSTOM_PATTERN_VALIDATOR])
class CustomPatternValidator implements Validator {
  ValidatorFn _validator;

  Map<String, dynamic> validate(AbstractControl c) {
    return this._validator(c);
  }

  @Input()
  set pattern(String value) {
    this._validator = Validators.pattern(value);
  }
}

但是此验证器不会禁用默认值,因此值首先使用null模式进行验证,并且控制始终无效。有什么方法可以纠正吗?

0 个答案:

没有答案