获取未定义的验证器控件值表单验证器

时间:2017-04-19 14:01:53

标签: validation angular

我构建了一个自定义验证器。

 this.slideOneForm = formBuilder.group({
        remise: ['', Validators.compose([Validators.maxLength(2), Validators.pattern('[1-9 ]*')]),Validator.isValid],
        quantite: ['', Validators.compose([Validators.maxLength(2), Validators.pattern('[1-9 ]*')])],
    });

这是自定义验证器的实现,它在remise线上调用:

export class Validator {
    static isValid(control: FormControl): any {
        return new Promise(resolve => {
            setTimeout(() => {
                console.log(control.value,"control.value");
                if (control.value > 50) {
                    resolve({
                        "remise ne peut pas passer 50% !": true
                    });
                } 
                else {
                    resolve(null);
                }
            }, 50);
        });
    }
}

当我用以下值测试时:10,20,30,40,控制台上的值是“未定义”。当我用1,25或任何数字< 50它完美无缺。

我如何解决问题。 提前谢谢你。

0 个答案:

没有答案