我在我的 Angular 2 项目中使用这个插件来屏蔽一些输入。
我遇到的问题是验证输入是否应用了正确的掩码。
每当我尝试检查它的值时,它总是valid
。例如,我有一个掩码来填写电话号码,就像在示例中一样:
@Component({
template: `
<input [textMask]="{mask: mask}" type="tel" formControlName="phone" />
`
})
export class AppComponent {
public myModel = ''
public mask = ['(', /[1-9]/, /\d/, /\d/, ')', ' ', /\d/, /\d/, /\d/, '-', /\d/, /\d/, /\d/, /\d/]
}
但是,即使我填写了 2 个数字(11_) ___-____
,它也会将该字段视为valid
.
我试图设置一个自定义验证器来检查输入长度,但它也通过了,因为它被预填充了_
.
this.registerForm = this._fb.group({
'phone': [null, Validators.compose([
Validators.required,
Validators.minLength(14),
Validators.maxLength(14)
])],
});
我不知道如何为这种类型的场景创建验证,包括更复杂的验证。