В моем приложении я делаю это:
<ion-col *ngFor = "let place of intentList, let photo of photoList">
<ion-card>
<ion-card-content>
<img class = "img" src = "{{photo}}" (click) = "clickedImage(place.intent)">
<div>{{place.val}}</div>
</ion-card-content>
</ion-card>
</ion-col>
массив photoList содержит строки с разными URL-адресами фотографий. Это массив:
this.photoList = ["./assets/images/001-breakfast.png", "./assets/images/002-brunch.png", "./assets/images/003-sandwich.png",
"./assets/images/004-food.png", "./assets/images/005-dinner.png", "./assets/images/006-cake.png", "./assets/images/007-cocktail.png"]






Это потому, что вы не можете запустить 2 цикла в angular. Таким образом, вы на самом деле не получаете значение пути к фотографии в своей переменной фотографии. Но вместо этого вы получаете значение переменной place в переменной photo.
Вы можете проверить это, напечатав значение фотографии
{{photo}}
<ion-col *ngFor = "let place of intentList; let i=index;">
<ion-card>
<ion-card-content>
<img class = "img" src = "{{photo[i]}}" (click) = "clickedImage(place.intent)">
<div>{{place.val}}</div>
</ion-card-content>
</ion-card>
</ion-col>
Вы можете добиться этого, используя индекс: