gpt4 book ai didi

angular - 从 Angular 2 FormGroup 获取所有验证错误

转载 作者:太空狗 更新时间:2023-10-29 16:46:30 24 4
gpt4 key购买 nike

给定这段代码:

this.form = this.formBuilder.group({
email: ['', [Validators.required, EmailValidator.isValid]],
hasAcceptedTerms: [false, Validators.pattern('true')]
});

如何从 this.form 获取所有验证错误?

我正在编写单元测试并希望在断言消息中包含实际的验证错误。

最佳答案

我遇到了同样的问题,为了找到所有验证错误并显示它们,我写了这个方法:

getFormValidationErrors() {
Object.keys(this.productForm.controls).forEach(key => {
const controlErrors: ValidationErrors = this.productForm.get(key).errors;
if (controlErrors != null) {
Object.keys(controlErrors).forEach(keyError => {
console.log('Key control: ' + key + ', keyError: ' + keyError + ', err value: ', controlErrors[keyError]);
});
}
});
}

表单名称 productForm 应更改为您的表单实例名称。

它以这种方式工作:我们从格式为 {[p: string]: AbstractControl} 的表单中获取所有控件,并通过每个错误键进行迭代,以获取错误的详细信息。它会跳过 null 错误值。

它也可以更改为在模板 View 上显示验证错误,只需将 console.log(..) 替换为您需要的即可。

关于angular - 从 Angular 2 FormGroup 获取所有验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40680321/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com