目前我有一个图像标签,我需要在其中进行JavaScript替换。我正在网上看,并且我已经阅读了一些人们关于使用指令来实现这一目标的想法,但我们找不到可以帮助我的例子。
我目前的设置如下:
HTML:
<img ng-src="{{day.Item.Logo}}" item-logo>
day.Item.Logo只是一个返回的字符串,看起来像这样。
http://domainnamehere.com/image%s%s.png
我目前的指示。
myApp.directive("itemLogo", function() {
return function(scope, element, attrs) {
attrs.ngSrc = attrs.ngSrc.replace("%s", "24");
attrs.ngSrc = attrs.ngSrc.replace("%s", "24");
}
});
我知道我在相信的指令中显然做错了但我不确定。基本上我想替换&#34;%s&#34;用&#34; 24&#34;并在它发出获取/加载图像的请求之前将其返回到视图。
答案 0 :(得分:2)
我认为问题是按角度进行指令处理的顺序。当它编译你的指令时,ng-src可能已经被处理了。我会在将它放入模型之前修改控制器中的url。
另一种方法是对ng-src进行函数调用,修改url。
ng-src='{{formatUrl(day.Item.Logo)}}'
这是JSBin