2016-02-26 5 views
0

Я пытаюсь использовать либо значок, либо изображение в зависимости от того, что существует в нашей системе управления контентом для отображения. по какой-то причине, когда на странице отображаются некоторые из изображений, отображаются с помощью ng-if (закомментировано) в инструментах dev, но на нем не отображается изображение на странице, как должно быть.ng-if не работает с ng-src

Вот связывание с использованием:

<% String iconClass = "icon-img-" + properties.get("iconClass" , ""); 
pageContext.setAttribute("iconClass", iconClass); %> 

и вот передний конец:

<h3 class="header__heading beta"><span class="${iconClass} header__icon" aria-hidden="true"><img ng-if="${imgPath}" ng-src="${imgPath}"/></span> ${title}</h3> 

что вызывает нг-если подобрать по пути изображения, но не отображать его?

+0

Вы уверены, что $ {imgPath} устанавливается при рендеринг страницы на сервере? – ninetwozero

+0

вам может понадобиться сделать $ scope. $ Apply() или просто использовать ng-show вместо ng-if – Akis

+0

@ninetwozero - он тянет путь к самому изображению, он просто не заполняет изображение. – peters313

ответ

1

Вы можете вызвать функцию для установки изображения в теге img.

<img ng-src="setImage(${imgPath})"> 

и контроллер проверки состояния

$scope.setImage = function(imgPath){ 
    if(imgPath.isAdvert) 
    // 
    else 
    // 

}; 
0

вы можете попробовать, как это: нг-Src = "{{imgPath}}"

+0

Добро пожаловать в StackOverflow! Не могли бы вы объяснить, почему это решает проблему? – katzenhut