8

我正在尝试学习如何牢固地使用 Angular,但我无法理解官方网站上的指南和示例中使用的一些语法。在定义按钮表单控件时,我看到了这个模板:

<div><button type="{{::to.type}}" class="btn btn-{{::to.btnType}}" ng-click="onClick($event)">{{to.text}}</button></div>

我的问题是:“to.type”和“to.btnType”之前的“::”是什么意思?它是如何使用的?这与这样定义有什么不同:

<a ng-class="{'btn-primary': to.isPrimary, active: to.isActive}" class="btn, btn-default"/>
4

2 回答 2

5

它是一次性绑定表达式,它阻止了观察者的扩散,这通常会导致性能问题。

这是一些有用的阅读:http ://blog.thoughtram.io/angularjs/2014/10/14/exploring-angular-1.3-one-time-bindings.html

于 2015-09-30T08:37:35.603 回答
0

这是一次性绑定表达式。

在您的情况下,何时to.type设置值,它将在 HTML 模板中更新。然后,如果值to.type再次更改,HTML 模板将不会更新为新值。

更多信息可以在 AngularJS 网站https://docs.angularjs.org/guide/expression#one-time-binding上找到。

于 2015-09-30T08:57:29.510 回答