您好我有以下代码来显示图像。
<div *ngFor="let image of images" >
<span *ngIf=" "> //if img=t.jpg display this line
<label>JPEG Image</label><img src='{{image.img}}'/>
</span>
<span *ngIf=" "> // if img=t.jpg dont display this line
<label>PNG Image</label><img src='{{image.img}}'/>
</span>
</div>
我想设置条件,如果图像扩展名为.jpg,即image.jpg我希望JPEG行显示,如果是.png,即image.png,我想要显示PNG图像行。 请让我知道如何在* ngIf中读取图像/文件的扩展名 感谢
答案 0 :(得分:4)
以下是示例代码,请检查
<强>组件强>
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
name = 'Angular 6';
images = [
{
img: 'https://upload.wikimedia.org/wikipedia/commons/b/b4/JPEG_example_JPG_RIP_100.jpg',
},
{
img: 'https://vignette.wikia.nocookie.net/fantendo/images/6/6e/Small-mario.png',
}
];
public getExstendsion(image) {
if (image.endsWith('jpg') || image.endsWith('jpeg')) {
return 'jpg';
}
if (image.endsWith('png')) {
return 'png';
}
}
}
<强> HTML 强>
<div *ngFor="let image of images" >
<span *ngIf="(getExstendsion(image.img) == 'jpg') || getExstendsion(image.img) == 'jpeg'">
<label>JPEG Image</label><img src='{{image.img}}'/>
</span>
<span *ngIf="getExstendsion(image.img) == 'png'">
<label>PNG Image</label><img src='{{image.img}}'/>
</span>
</div>
答案 1 :(得分:0)
假设image.img
包含字符串:
<强>打字稿强>
// this checks if it ends with .jpg or .jpeg and returns true if so
func isJPG(name) {
return name.endsWith('jpg') || name.endsWith('jpeg')
}
// same, but for png
func isPNG(name)
return name.endsWith('png')
}
html模板
*ngIf="isJPG(image.img)"
注意:从内存中输入,如果我的函数语法关闭,请道歉。一般的想法应该仍然有效。创建方法,使用endsWith()
方法检查字符串,在*ngIf=