在表达式变量之前放置角度JS中的双冒号(::)是什么意思。 对于Ex。 {{::的firstName}}
角度js中{{firstName}}和{{:: firstName}}之间有什么区别?
答案 0 :(得分:18)
取自:https://www.binpress.com/tutorial/speeding-up-angular-js-with-simple-optimizations/135
它的内容如下:
一次性绑定语法
{{ ::value }}
AngularJS最近在测试版中放弃了一个非常有趣的功能 版本1.3.0:一次呈现数据并让它持久化的能力 不受未来模型更新的影响。这是个好消息 对于高度关注性能的开发人员!在此更新之前, 我们通常会在DOM中呈现一个值,如下所示:
<h1>{{ title }}</h1>
使用新的一次性绑定语法,我们引入了一个双冒号 在我们的价值之前:
<h1>{{ ::title }}</h1>
Angular像往常一样处理DOM,一旦值已经处理 解决了它从内部删除特定属性
$$watchers
列表。这对性能意味着什么?很多!这是一个 除了帮助我们微调我们的应用程序外,还有很棒的功能。众所周知,Angular会因约2,000个绑定而变慢 进行脏检查的过程。我们越少可以添加到此 限制更好,因为绑定可以加起来而没有我们真正注意到 它!
使用单一绑定语法很简单,最重要的是快速。 语法清晰简洁,降低了语法的真正好处
$$watcher
开销。 Angular必须做的工作越少,越多 响应我们的应用程序将成为。