görüş mesafesi:
Açısallarınız önyükleme yaparken, kullanıcı html'de yerleştirdiğiniz parantezleri görebilir. Bu ile halledilebilir ng-cloak. Ama benim için bu bir çözüm, eğer kullanmam gerekirse kullanmam gerekmiyor ng-bind.
Verim:
{{}}Olduğunu çok daha yavaş .
Bu ng-bindbir direktiftir ve geçirilen değişkenin üzerine bir gözlemci yerleştirir. Bu yüzden, ng-bindsadece geçilen değer gerçekten değiştiğinde uygulanır .
Öte yandan parantez edilecek kirli kontrol ve yenilenir her $digest o olsa bile gerekli değildir .
Şu anda büyük bir tek sayfa uygulaması (görünüm başına ~ 500 ciltleme) oluşturuyorum. {{}} 'Dan katıya geçmek ng-bind, her birinde yaklaşık% 20 tasarruf sağladı scope.$digest.
Öneri :
Açısal çeviri gibi bir çeviri modülü kullanıyorsanız , köşeli parantez açıklamasından önce her zaman yönergeleri tercih edin .
{{'WELCOME'|translate}} => <span ng-translate="WELCOME"></span>
Bir filtre işlevine ihtiyacınız varsa, aslında sadece özel filtrenizi kullanan bir yönerge tercih edin. $ Filter service belgeleri
GÜNCELLEME 28.11.2014 (ancak konu dışında olabilir):
Açısal 1.3x'te bindonceişlevsellik tanıtıldı. Bu nedenle, bir ifadenin / özniteliğin değerini bir kez bağlayabilirsiniz (! = 'Tanımsız' olduğunda bağlanır).
Bu, bağlantınızın değişmesini beklemediğinizde yararlıdır.
Kullanım: ::bağlama önce yerleştirin:
<ul>
<li ng-repeat="item in ::items">{{item}}</li>
</ul>
<a-directive name="::item">
<span data-ng-bind="::value"></span>
Misal:
ng-repeattablodaki bazı verileri, her satırda birden çok bağlama olacak şekilde çıktılamak için. Çeviri ciltleri, filtre çıktıları, her kapsamda sindirilir.
ngBindyerine kullanılması tercih edilir{{ expression }}.ngBindBir öğe niteliği olduğundan, sayfa yüklenirken bağlamaları kullanıcıya görünmez yapar." - ancak performansla ilgili hiçbir şey belirtilmiyor.