angular4.x 图片不存在如何显示默认图片?

发布于 2022-09-06 07:59:00 字数 32 浏览 12 评论 0

angular4.x 图片不存在如何显示默认图片?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

聽兲甴掵 2022-09-13 07:59:00

通过自定义指令可以使用解决了,上代码
指令内容error-img.directive.ts

import { Directive, ElementRef, HostListener, Input } from '@angular/core';
@Directive({
selector: '[appErrorImg]'
})
export class ErrorImgDirective {
// tslint:disable-next-line:no-input-rename
@Input('appErrorImg') errorImagSrc: string;
constructor(public elementRef: ElementRef) { }

@HostListener('error', ['$event.target'])
ImageError(event) {

if (this.errorImagSrc) {
  event.src = this.errorImagSrc;
} else {
  // tslint:disable-next-line:max-line-length
  event.src = 'https://ss1.baidu.com/-4o3dSag_xI4khGko9WTAnF6hhy/image/h%3D300/sign=96baa30f1bdfa9ece22e501752d0f754/342ac65c103853439f9b46329913b07eca808849.jpg';
}

}
}
使用方法:
如果传值则使用值的图片,否则使用指令内默认图pain

<img [src]='product?.goodsImg' appErrorImg>

<!-- <img src="../../../assets/images/404icon.png" > -->
<div class="activity-info" *ngIf="showActive||product?.is_act">
  <img [src]="product?.act_img" appErrorImg="https://ss3.baidu.com/-fo3dSag_xI4khGko9WTAnF6hhy/image/h%3D300/sign=f98266a88dd6277ff612343818391f63/1b4c510fd9f9d72a1edae20ede2a2834349bbb63.jpg">
</div>
柒夜笙歌凉 2022-09-13 07:59:00

用 http 模块请求一次吧,返回 404 之类的就不修改链接地址了。

无法回应 2022-09-13 07:59:00

targetImg ? targetImg : defalutImg

凶凌 2022-09-13 07:59:00

<img [src]="yourImgPath" onError="this.src='yourErrorDefaultImg' ">.第一个属性[src]是你要显示的图片的路径,第二个属性onError是图片不存在是显示的默认图片

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文