Co oznaczają dwa dwukropki wewnątrz wyrażenia kątowego {{::}}?

Jaka jest różnica między:

{{::office.name}}

I

{{office.name}}
W angularJS?
Author: Kamil Naja, 2016-01-08

2 answers

Składnia {{::office.name}} jest bindowaniem jednostronnym, dostępnym od wersji 1.3
Oto fajny blog wyjaśniający to.

 65
Author: Teo.sk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-08 13:39:09

Wiązanie jednorazowe z Angular Docs.

Wyrażenie zaczynające się na :: jest uważane za wyrażenie jednorazowe. Wyrażenia jednorazowe przestaną przeliczać, gdy są stabilne, co dzieje się po pierwszym przetworzeniu, jeśli wynikiem wyrażenia jest wartość nieokreślona (patrz algorytm stabilizacji wartości poniżej).

W wielu sytuacjach wartości muszą być wyświetlane tylko w widoku i nigdy nie będą aktualizowane z widoku lub kontroler. Jeśli jednak używane jest Wiązanie dwukierunkowe, $digest sprawdzi wszelkie zmiany w wyrażeniu w każdym cyklu, co nie jest konieczne. W takich przypadkach przed wyrażeniem należy użyć ::. Jak stwierdzono w powyższym oświadczeniu, jest to bardziej efektywne niż dwukierunkowa składnia wiążąca dla takich przypadków.


Blog: AngularJS one-time binding syntax from @ Todd Motto

W powłoce nut, kiedy deklarujemy wartość taką jak {{ ::foo }} wewnątrz DOM, gdy to wartość zostanie zdefiniowana, Angular wyrenderuje ją, odpisze od obserwatorów i tym samym zmniejszy objętość wiązań wewnątrz pętli $digest. Proste!

 79
Author: Tushar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 11:47:24