Skip to content

Instantly share code, notes, and snippets.

Revisions

  1. @domagoj03 domagoj03 revised this gist Oct 14, 2019. 1 changed file with 12 additions and 4 deletions.
    16 changes: 12 additions & 4 deletions get-form-validation-errors.ts
    Original file line number Diff line number Diff line change
    @@ -1,11 +1,19 @@
    import { FormGroup, ValidationErrors } from '@angular/forms';
    import {FormGroup, ValidationErrors} from '@angular/forms';

    export function getFormValidationErrors(form: FormGroup) {
    export interface IFormError {
    control: string;
    error: string;
    value: any;
    }

    export function getFormValidationErrors(form: FormGroup) {
    const result = [];
    Object.keys(form.controls).forEach(key => {

    const controlErrors: ValidationErrors = form.get(key).errors;
    const formProperty = form.get(key);
    if (formProperty instanceof FormGroup) {
    result.push(...getFormValidationErrors(formProperty))
    }
    const controlErrors: ValidationErrors = formProperty.errors;
    if (controlErrors) {
    Object.keys(controlErrors).forEach(keyError => {
    result.push({
  2. @JohannesHoppe JohannesHoppe revised this gist Jul 19, 2019. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion get-form-validation-errors.ts
    Original file line number Diff line number Diff line change
    @@ -9,7 +9,7 @@ export function getFormValidationErrors(form: FormGroup) {
    if (controlErrors) {
    Object.keys(controlErrors).forEach(keyError => {
    result.push({
    'control ': key,
    'control': key,
    'error': keyError,
    'value': controlErrors[keyError]
    });
  3. @JohannesHoppe JohannesHoppe renamed this gist May 30, 2018. 1 changed file with 0 additions and 0 deletions.
  4. @JohannesHoppe JohannesHoppe created this gist May 30, 2018.
    21 changes: 21 additions & 0 deletions get-form-validation-errors.ts.ts
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,21 @@
    import { FormGroup, ValidationErrors } from '@angular/forms';

    export function getFormValidationErrors(form: FormGroup) {

    const result = [];
    Object.keys(form.controls).forEach(key => {

    const controlErrors: ValidationErrors = form.get(key).errors;
    if (controlErrors) {
    Object.keys(controlErrors).forEach(keyError => {
    result.push({
    'control ': key,
    'error': keyError,
    'value': controlErrors[keyError]
    });
    });
    }
    });

    return result;
    }