2015-12-18 54 views
1

我有一個屬性組件和一個地址組件。每個物業都有物理地址和賬單地址。在屬性模板來創建一個新的屬性,我有嵌套窗體驗證狀態不滾動(角度2)

<property> 
property fields like name etc.. with required attribute 
<address></address> (for physical address) - has required attributes as well 
<address></address> (for billing address) - has required attributes as well 
</property> 

保存按鈕在酒店有form.valid檢查,以驗證是否輸入所有必填字段。在上述情況下,一旦輸入了所有必需的屬性字段,保存按鈕即被啓用,並忽略地址組件。我們如何使用地址組件驗證整個表單?

使用的版本:angular2.0(beta0)

我們要提交按鈕後,才全部必填字段填寫啓用 這裏是plunker鏈接:http://plnkr.co/edit/scq69cH3mjXrjFZn7pPp?p=preview

回答

1

你可以做通過使用您在模板中的ADRESS組件設置本地模板變量:

<address #adress></address> 

然後,您可以使用這個變量來訪問ADRESS組件

<input type="submit" [disabled]="!parent.form.valid||!adress.childForm.valid" value="submit" class="btn btn-success" /> 

我已經更新您的plunkr:http://plnkr.co/edit/gSASvPwLVVW4ImQOXKWP?p=preview

+0

感謝托馬斯,解決方案的工作..但如果我有10個個子組件,這可能會變得複雜,檢查..有一個自動捲起來像角1 。X? –

+0

我不知道。但我的猜測是,因爲這兩個組件是獨立的,這是不可能的... –