我有像<img class="testClass" ng-src="{{ImagePath}}" alt="{{imageName}}" />
但是,在页面加载后,我会看到src
标记的img
属性,如下所示。
<img class="testClass" ng-src="/files/imageName_1.jpg" alt="Image 1" src="/files/imageName_1.jpg">
那么,默认情况下还会添加src
属性吗?
示例jsfiddle http://jsfiddle.net/wktwL/5/
如果我们检查输出图像上的元素,我们可以看到ng-src和src属性。
答案 0 :(得分:2)
是的,angular为所有有效的ng- *指令添加了适当的HTML标记属性。
基本上,你添加&#39; ng-src&#39;一个元素;当angular开始解析HTML时,它遇到了&#39; ng-src&#39;属性它试图找到已注册的&#39; ngSrc&#39;当发现它调用该指令并且该指令的逻辑添加了src标记时。
来自AngularJS网站:
在src属性中使用{{hash}}之类的AngularJS标记并不正常:浏览器将使用文字文本{{hash}}从URL中获取,直到AngularJS替换{{hash}中的表达式为止}。 ngSrc指令解决了这个问题。
写它的错误方法:
<img src="http://www.gravatar.com/avatar/{{hash}}" alt="Description"/>
写它的正确方法:
<img ng-src="http://www.gravatar.com/avatar/{{hash}}" alt="Description" />
答案 1 :(得分:0)
是的,AngularJS为有效的ng- *指令添加适当的HTML标记属性。 AngularJs始终将指令转换为html标记。
答案 2 :(得分:0)
是的,我看到角度实现和文档的方式,angular将src属性添加到img标记以及ng-src属性