2016-11-18 158 views
2

是否可以使用相同的FormGroup創建兩個表單?具有相同FormGroup的兩種形式?

我有一種形式來添加一個實體,另一種來編輯。 兩種形式都有相同的表單元素。到目前爲止,我必須編寫兩個表單組並訪問數據。但我需要使formgroup具有全局性,並以這兩種形式使用它。可能嗎?請指出一個正確的方向。任何意見將是有益的。謝謝。

這裏是我的代碼片段:

AddEntityComponent:

this.addEntityForm = addEntityFormBuilder.group({ 
     'Code': "", 
     'Name': [null, Validators.required], 
     'Type': "", 
     'Email': "", 
     'Website': "", 
     'DefaultDivision': "", 
     'EffectDate': Date.now, 
     'PanNo': "", 
     'HomeCurrency': "", 
     'LstNo': "", 
     'CstNo': "", 
     'FaxNo': "", 
     'Address1': "", 
     'Address2': "", 
     'Address3': "", 
     'RegdAddress1': "", 
     'RegdAddress2': "", 
     'RegdAddress3': "", 
     'IsActive': "" 
    }); 

必須同時在addentitycomponent和editentitycomponent使用此formgroup。

+0

當您提交了一些ID,現有的項目已經(通常是自動生成DATABSE)形式的檢查,如果存在的話做更新,如果不創造... ... – Sasxa

+0

感謝@Sasxa的反應,但我使用兩個組件各自具有一種形式。即AddEntityComponent和EditEntityComponent。雖然這是一個好主意。 –

回答

1
 if(flag="add") 
     { 
      this.addEntityForm = addEntityFormBuilder.group({ 
       'Code': "", 
       'Name': [null, Validators.required], 
       'Type': "", 
       'Email': "", 
       'Website': "", 
       'DefaultDivision': "", 
       'EffectDate': Date.now, 
       'PanNo': "", 
       'HomeCurrency': "", 
       'LstNo': "", 
       'CstNo': "", 
       'FaxNo': "", 
       'Address1': "", 
       'Address2': "", 
       'Address3': "", 
       'RegdAddress1': "", 
       'RegdAddress2': "", 
       'RegdAddress3': "", 
       'IsActive': "" 
      }); 
     } 

     elseif(flag="edit") 
     { 
      var entity=service.getentity(); 
      this.addEntityForm = addEntityFormBuilder.group({ 
       'Code': entity.code, 
       'Name': entity.name, 
       .... 
       'IsActive': entity.IsActive 
      }); 
     } 


    It assigns data when edit. 
same when submit the form use flag. 
相關問題