什么时候使用 ngAttr?

When to use ngAttr?

只是想澄清一下。有人告诉我,当有内插标记时,你应该使用 ngAttr。例如:

<div ng-attr-name={{Name}}></div>

我还在网上看到一些代码,其中有内插标记,但它们不使用 ngAttr。在处理内插标记时,是否存在使用 ngAttr 而不使用 ngAttr 的特定情况?

我记得 运行 在使用 <svg/> 并尝试插入 cx 等属性时遇到过这个问题(这恰好是当前 angularjs 文档中的经典示例)。当您尝试以下操作时,浏览器会抱怨:

<svg>
  <circle cx="{{cx}}"></circle>
</svg>

由于使用 SVG DOM API 时的限制。因此,ng-attr 指令与

一起派上用场
<svg>
  <circle ng-attr-cx="{{cx}}"></circle>
</svg>

因此,在这种情况下使用 `ng-attr- 指令将根据您的绑定适当地设置值。现在,我在文档中注意到以下新情况,如果您不使用 ng-attr

,这些情况已知会导致问题