2016-11-17 6 views
2
のバインディングとの差

私はホストコンポーネントにバインドされたrowプロパティを持つカスタムmy-tableを持っています。[]シンタックスを使用したバインディングと

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

をし、次のように:私は、2つの方法でHTMLを置くことができる

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

違いは何ですか?

答えて

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

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

は、文字列の補間を行うようですdisplayEntriesCountに値をバインドします。これは、割り当てられた値がdisplayEntriesCountの文字列化された値であることを意味します。 オブジェクト値を割り当てる場合は、これを使用しないでください。

+0

ありがとう、それは右側の違いです、左側の '[rows]' vs 'row'はどうでしょうか? –

+1

'[]'と '{{}}'を同時に使うことはできません。そのため、左側面も右側面もありません。それは常に両面同時にです。これらのうちの1つを使用する場合は、Angular2バインディング構文です。これらを使用しない場合はそのままのHTMLで、Angular2を気にすることなくそのままDOMに追加します。実際に 'rows'という名前の入力があった場合、その値を文字列として追加します。 'rows =" displayEntriesCount "は文字列' 'displayEntriesCount ''を入力に渡します。 –

+0

ありがとう、私はアルゴリズムを理解しようとしています。あなたが言っているのは、両側が同時に角度をチェックするということですか?私はそれが最初に左側(ターゲット)で動作し、コンポーネントまたはDOM要素がプロパティを持っているかどうかをチェックすると思います。行があればそれを評価し、そうでなければスローしてエラーを返します。合理的な論理ですか? –

関連する問題