2016-05-13 6 views
12
  • Die Form, die Entitätsstatus wird bearbeitet (dreht sich schmutzig)
  • Die Form wird abgegeben und Entitätsstatus wird nun ausgerichtet sind mit dem Formzustand, was bedeutet, dass die Form nun als ursprünglich festgelegt werden sollte, darstellt.

Wie machen wir das? Es gab $setPristine() in ng1. Btw, ich spreche über ControlGroup Art der Form.Wie man ein Formular als ursprünglich einstellt?

Antwort

8

Update

Im neuen Formen Modul dies viel verbessert wurde.

AbstractControl stellt die Basisklasse der meisten Formularklassen

markAsTouched({onlySelf}?: {onlySelf?: boolean}) : void 
markAsUntouched({onlySelf}?: {onlySelf?: boolean}) : void 
markAsDirty({onlySelf}?: {onlySelf?: boolean}) : void 
markAsPristine({onlySelf}?: {onlySelf?: boolean}) : void 
markAsPending({onlySelf}?: {onlySelf?: boolean}) : void 

und einige andere neue Methoden

disable({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void 
enable({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void 
setValue(value: any, options?: Object) : void 
patchValue(value: any, options?: Object) : void 
reset(value?: any, options?: Object) : void 
updateValueAndValidity({onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void // (old) 
setErrors(errors: {[key: string]: any}, {emitEvent}?: {emitEvent?: boolean}) : void 

Original

Das wird derzeit nicht unterstützt. Siehe https://github.com/angular/angular/issues/5568 und https://github.com/angular/angular/issues/4933. Die übliche Problemumgehung besteht darin, das Formular neu zu erstellen, um ein Original zu erhalten.

+0

........... super ........... – Birowsky

0
class MyComp { 
    form = new FormGroup({ 
     first: new FormControl('Nancy'), 
     last: new FormControl('Drew') 
    }); 
} 

    reset() { 
     this.form.reset(); // will reset to null 
    // this.form.reset({first: 'Nancy', last: 'Drew'}); -- will reset to value specified 
    } 

https://github.com/angular/angular/pull/9974

Dies wird in RC5 oder später auftauchen.