From 421ebe05c8b1e8099ba000836fc1dcdddeef65d0 Mon Sep 17 00:00:00 2001 From: 沈斌 <bluelazysb@hotmail.com> Date: Sun, 28 Jan 2018 14:16:06 +0800 Subject: [PATCH] updates --- src/app/business/services/util/tools.service.ts | 27 ++++++++++++++++++++++++++- 1 files changed, 26 insertions(+), 1 deletions(-) diff --git a/src/app/business/services/util/tools.service.ts b/src/app/business/services/util/tools.service.ts index b2eb6f8..affe82f 100644 --- a/src/app/business/services/util/tools.service.ts +++ b/src/app/business/services/util/tools.service.ts @@ -1,6 +1,31 @@ +import { FormGroup, FormArray, AbstractControl } from '@angular/forms'; import { Injectable } from '@angular/core'; @Injectable() export class ToolsService { - + public static markAsDirty(controlSet:FormGroup|FormArray){ + const controls = controlSet.controls; + Object.values(controls).forEach( + (control:AbstractControl) => { + if(control instanceof FormGroup || control instanceof FormArray){ + ToolsService.markAsDirty(control); + }else{ + control.markAsDirty(); + } + } + ) + } + public static removePrivate(obj:object){ + Object.keys(obj).forEach( + (key:string) => { + if(key.startsWith('_')){ + delete obj[key]; + }else{ + if(obj[key] instanceof Object){ + ToolsService.removePrivate(obj[key]); + } + } + } + ); + } } -- Gitblit v1.8.0