2017-04-01 54 views
0

我在* ngFor循環中顯示圖像數組。當我知道<img> ID時,如何更改< img>的src?

itemimg.component.html

<div *ngFor="let itemimg of itemimgs" [class.selected]="itemimg === selectedItemimg" 
      (click)="onSelect(itemimg)"> 
    <img id="{{itemimg.index}}" class="thumb" src="{{itemimg.imageUrl}}" width="{{itemimg.width}}" height="{{itemimg.height}}" 
     style="float: left; margin-right: 3px; margin-bottom: 3px"> 
</div> 

當我點擊任何我想要替換第一圖像的圖像。

itemimg.components.ts(部分)

onSelect(itemimg: Itemimg): void{ 
    this.selectedItemimg = itemimg; 
    var newsrc = "../../assets/images/" + itemimg.route + ".jpg"; 
    //alert (newsrc); 
    *what-goes-here* = newsrc; // the problem 
    } 

我一直在GOOGLE上搜索這個了三個多小時,但無法找到答案。感謝您的期待。

回答

1

請做以下考慮你總是希望更換陣列中的第一個圖像:

onSelect(itemimg: Itemimg): void{ 
this.selectedItemimg = itemimg; 
var newsrc = "../../assets/images/" + itemimg.route + ".jpg"; 
//alert (newsrc); 
this.itemimgs[0].imageUrl = newsrc; 

}

+1

當我看到您的回覆我很尷尬,因爲我應該能夠爲自己工作,但我確實嘗試過。它工作完美,謝謝。 –

0

您想要替換陣列itemimgs中第一個圖像的imageUrl

因此,所有你需要的是

this.itemimgs[0].imageUrl = newsrc; 
相關問題