{{ x + ', ' + y }}
は{{ x }}, {{ y }}
に何か違いがありますか?AngularJS: `{{x + '、' + y}}対{{x}}、{{y}} '
特にウォッチャー費用の面では?
双方向バインドの中括弧を組み合わせてダイジェストループの数を減らすことができるのだろうかと思います。
ありがとうございます。
{{ x + ', ' + y }}
は{{ x }}, {{ y }}
に何か違いがありますか?AngularJS: `{{x + '、' + y}}対{{x}}、{{y}} '
特にウォッチャー費用の面では?
双方向バインドの中括弧を組み合わせてダイジェストループの数を減らすことができるのだろうかと思います。
ありがとうございます。
1つのダイジェストループは、まったくそれをやろうとしている場合、一方または両方を処理します。 x
のダイジェストではなく、y
のダイジェストではありません(後で新しいものをトリガーしない限り)。技術的には、前者の方が文字列連結を伴うので少し税金がかかると言えますが、後者の場合は何とか後ろの方で起こるはずです。
全体として、一度に数百または数千を表示している場合を除き、このレベルの表現で目立ったパフォーマンスの差が出るとは思えません(その場合、おそらく他の問題もあります)あなたのアプローチを再考する必要があります)。
正確には、最初の式は1つの時計を生成しますが、角度は連結を再計算します。
2番目の行に2つの時計があると思われるかもしれませんが、わからない場合もあります。私はあなたがこれを行う場合、それを知っています:
<span> blabla {{x}} blabla</span>
角度はスパンの全体の内容を見ます。だから、大括弧を複数回使用している場合は、全体として1つの時計しか持たない可能性が非常に高いでしょう。
{{}}
表記はng-bind
ディレクティブを使用して、より遅い:
{{}}
はすべて消化サイクルでダーティチェックされng-bind
パラメータに渡された値にウォッチャを置き、それが変更された場合にのみ、それを更新する一方。 ng-bind
を{{}}
以上に使用することのもう1つの利点は、角がまだロードされているときにページ内に{{}}
が表示されないことです。
(あなたの変数は変更されません知っているとき)また、あなたがスタティックバインディング用(角1.3で導入された)新しい::
表記法を使用することができます。{{}}
ng-bind
対表記についての言及について
<h1 data-ng-bind="::title"></h1>
:
"ng-bindはより簡単なので高速です。補間は、コンテキストの検証、値の結合、および の追加手順を経て に行きます。それはわずかに遅くなります」
'ng-bind x {{}}'についてのパフォーマンスに関する参照はありますか?私はそれについてもっと調べたい – celsomtrindade
いくつかの参考文献を追加しました –
元の引用は最初のリンクからです^^ベンチマークの方法論は理想的ではなく、引用符は_で続きます "ほとんどの場合、違いは関係ありません"_。汚い点検に関して:2つの間に違いはありません。 – zeroflagL
ダイジェストサイクルの数は変更されません。 – zeroflagL