Cuándo usar llaves dobles {{}} en angularJS
Tomado de la documentación angular:
Expresiones angulares
Las expresiones angulares son fragmentos de código similares a JavaScript que se colocan principalmente en enlaces de interpolación como
<span title="{{ attrBinding }}">{{ textBinding }}</span>
pero también se usa directamente en atributos de directiva comong-click="functionExpression()"
.
Por ejemplo, estas son expresiones válidas en Angular:
1 + 2 a + b user.name artículos [índice]
Sin embargo, estoy un poco confundido sobre cuándo usar la sintaxis de llaves dobles{{}}
y cuando no. La documentación parece sugerir que no los necesita cuando usa expresiones dentro de los atributos de la directiva (vea el ejemplo ng-click arriba).
Aunque el siguiente código que funciona ofrece evidencia anecdótica de lo contrario:
<ul id="Menu">
<li ng-repeat="appModule in applicationModules"
id="{{appModule.Name}}"
ng-class="{ 'selected' : selectedAppModule == '{{appModule.Name}}' }"
ng-click="menuClicked(appModule.Name)">
<a href="#Content/{{appModule.Name}}">{{appModule.Display}}</a>
</li>
</ul>
Observe cómo en la directiva ng-class se usan llaves dobles y dentro de la directiva ng-click no.
¿Cómo sabes cuándo usarlos y cuándo no?