当AngularJS编译DOM时会查找花括号{{ some expression }}内的表达式。这些表达式会被自动注册到$watch服务中并更新到$digest循环中,成为它的一部分:
<-- updated when`someExpression` on the$scope
is updated -->
<h1>Hello{{someExpression}}</h1> 7
有时浏览器会对属性会进行很苛刻的限制。SVG就是一个例子:
<svg>
<circle cx="{{ cx }}"></circle>
</svg>
89
10
11
12
13
14
15
16
17
18
运行上面的代码会抛出一个错误,指出我们有一个非法属性。可以用ng-attr-cx来解决这个问题。注意,cx位于这个名称的尾部。在这个属性中,通过用{{ }}来写表达式,达到前面提到的目的。
<svg>
<circle ng-attr-cx="{{ cx }}"><circle>
</svg>