当前位置: 首页 > news >正文

html中利用 onerror 事件监听图片加载错误的情况

@error 是 Vue.js 中用于监听 HTML <img> 标签的 error 事件的指令。当浏览器尝试加载图像但失败时(例如,图像 URL 无效、图像不存在或由于网络问题无法加载),会触发 error 事件。

<img v-if="app.logo" 
     :src="app.logo"  
     @error="app.logo=''"  
     alt=""
     class="w-10 h-10 shrink-0 ml-4 rounded-lg object-cover shadow-md ring-2 ring-gray-100 group-hover:ring-blue-100 transition-colors"/>
<div v-else
     class="w-10 h-10 shrink-0 ml-4 rounded-lg object-cover shadow-md ring-2 ring-gray-100 group-hover:ring-blue-100 transition-colors">
    <n-avatar size="large">
        APP
    </n-avatar>
</div>

`@error="app.logo=''"` 的作用是:一旦图片加载失败(即发生错误),就将 `app.logo` 设置为空字符串 `''`。这样做会使 `v-if="app.logo"` 条件变为假,从而隐藏 `<img>` 元素,并显示 `v-else` 部分的内容,也就是默认的 `<n-avatar>` 占位符。

 详细解释

  •  **`:src="app.logo"`**: 绑定图像的 `src` 属性到 `app.logo`。这意味着如果 `app.logo` 包含有效的图像 URL,该图像将会被加载。

  

  •  **`@error="app.logo=''"`**: 这是一个事件绑定语法,表示当图像加载失败时执行指定的表达式。这里,它设置 `app.logo` 为空字符串。这会导致 `v-if="app.logo"` 条件不再满足,从而隐藏当前的 `<img>` 元素并显示 `v-else` 部分的内容。

http://www.dtcms.com/a/62165.html

相关文章:

  • Android Retrofit 框架的接口代理与调用模块源码分析(二)
  • 【2025】Electron 基础二(进程模型三大核心)
  • 碳中和小程序:助力用户记录低碳行为,推动环保生活
  • 03_添加一个简单的字符设备并支持read操作
  • OpenManus测出死循环bug
  • 球衣号码选几号最好·棒球1号位
  • GStreamer —— 2.16、Windows下Qt加载GStreamer库后运行 - “播放教程 2:字幕管理“(附:完整源码)
  • 文摘:关于提问
  • maven的项目构建
  • iOS中的设计模式(八)- 桥接模式
  • 前端如何发布npm包
  • 【力扣刷题实战】查找总价格为目标值的两个商品
  • C++从零实现Json-Rpc框架
  • Flink测试环境Standalone模式部署实践
  • Java17中LinkedList类介绍、应用场景和示例代码
  • 《AI浪潮中的璀璨新星:Meta Llama、Ollama与DeepSeek的深度剖析》
  • Yashan DB 文件管理
  • Linux 进程控制:创建、终止、等待与程序替换全解析
  • 网页打印很简单!用web打印插件lodop轻松实现文件打印
  • mac 本地 docker 安装 kafka
  • [多线程]基于阻塞队列(Blocking Queue)的生产消费者模型的实现
  • Windows11日志文件位置Linux下的目录简介
  • 深度解读:OpenAI发布GPT-5的技术突破与商业影响
  • AI科技公司招聘一位后端开发工程师
  • Git的命令学习——适用小白版
  • 菜鸟之路Day23一一JavaScript 入门
  • go的”ambiguous import in multiple modules”
  • Ubuntu开荒
  • 专题三二分算法
  • 工作记录 2017-01-04