2016-11-17 3 views
0

Ich verwende einen reaktiven Ansatz in angular2.Reaktiver Ansatz Angular2

Wo habe ich diese Formulargruppe.

 return this.fb.group({ 
      CreateDate:[''], 
      UpdateDate:[''] 
     }); 

CreateDate und UpdateDate müssen nicht eingegeben werden. Aber wenn ich die Absenden-Button geklickt bekomme ich diesen Fehler:

core.umd.js:3010 Error: Must supply a value for form control with name: 'CreateDate' 

Gibt es eine Möglichkeit zu Fest dieser Frage, wenn das Formular Gruppenwert ist leer.

+1

Können Sie bitte den HTML-Code posten? –

+0

CreateDate und UpdateDate haben keine Eingabefelder. Es war nur ein Lesezugriff. – Zero

+0

Wofür benötigen Sie den Formbuilder? Ich habe einen Plünderer für dich gemacht. Kannst du das Problem dort reproduzieren? http://plnkr.co/edit/nrHtxAhRG64cV7FNp0Q7 –

Antwort

3

Irgendwo im Code, Sie rufen:

this.myForm.setValue({ 
    UpdateDate: 'a value here' 
    // but you forgot CreateDate 
}); 

Daraus ergibt sich die Fehler.

Wenn Sie setValue verwenden, muss der Parameter die gleiche Struktur wie definiert haben. Wenn Sie Ihre Formularwerte teilweise aktualisieren möchten, verwenden Sie patchValue.

Überprüfen Sie Ihre setValue und patchValue Anrufe.

Verwandte Themen