在ng-repeat中使用ng-if条件的ng-src仍会在后台加载图像

时间:2017-01-19 16:50:36

标签: javascript angularjs angular-ng-if

我有一个范围对象,其中包含有3个不同图像的对象。我在div中显示图像,重复到范围对象的长度。我有3个不同的img标签,它们具有ng-if属性且仅一次显示3个图像中的一个。但是当我检查chrome的开发人员工具的网络部分时,我发现所有图像都是从服务器请求的,即使它们没有显示。如何阻止它们加载?< / p>

<div class="container" ng-repeat="image in images">
 <img ng-if="zoom == 1" ng-src="{{image.small}} alt="{{image.text}}">
 <img ng-if="zoom == 2" ng-src="{{image.medium}} alt="{{image.text}}">
 <img ng-if="zoom == 3" ng-src="{{image.big}} alt="{{image.text}}">
</div>

如果条件为假,是否应该阻止图像加载? 我正在使用angularjs 1.5

1 个答案:

答案 0 :(得分:0)

根据this GitHub Issue,您需要使用ng-show代替ng-if ng-src以防止加载不需要的图片。