2016-11-17 17 views
2

的綁定之間的區別我有一個自定義my-table,並將屬性row綁定到主機組件。我可以把HTML兩種方式:使用[]語法和不使用

<my-table [rows]="displayEntriesCount"></my-table> 

像這樣:

<my-table rows="{{displayEntriesCount}}"></my-table> 

有什麼區別?

回答

2
<my-table [rows]="displayEntriesCount"></my-table> 

結合在displayEntriesCount值作爲是

<my-table rows="{{displayEntriesCount}}"></my-table> 

確實串內插。這意味着分配的值是字符串化的值displayEntriesCount。 如果您想分配對象值,請不要使用它。

+0

謝謝,這是正確的差異,左側'[行]'和'行'呢? –

+1

您可以使用'[]'或{{}}',但不能同時使用兩者,因此沒有左側或右側。它始終是雙方的同時。如果你使用其中的一種,那麼它就是Angular2綁定語法,如果你不使用任何這些語法,那麼它就是逐字的HTML,並且只是在沒有Angular2關心它的情況下添加到DOM中。實際上,如果您有一個名爲'rows'的輸入,它會將該值作爲字符串添加。 'rows =「displayEntriesCount」將字符串「」displayEntriesCount「'傳遞給輸入。 –

+0

謝謝,我只是想了解算法。你說的是角度檢查雙方在同一時間?我猜測它首先在左側工作(目標)並檢查組件或DOM元素是否具有屬性,例如, 'rows',如果是,則評估右側,否則會拋出錯誤。這是合理的邏輯嗎? –