Vue3 + VIte + Ts 实现自定义监控图片加载失败/报错处理指令

新建一个放自定义指令的文件夹

代码:


export const directive_onerror = function (app:any) {
  // 图片指令检测图片加载
  app.directive('onerror', {
    mounted: (el:any, binding:any) => {
      let img = new URL('../assets/img/0.png', import.meta.url).href  
      
      el.onerror = () => {
        el.src = img
      }
      if (!el.src) {
        el.src = img
        return
      }
    }
  })

}
 

在 mian.ts 中引入

import { createApp } from 'vue'
import App from './App.vue'
import {directive_onerror} from './directive/index'

const vue = createApp(App)
vue.use(router)
vue.mount('#app')
vue.use(ElementPlus)
directive_onerror(vue)

说明:

        1、引入后一定使用 directive_onerror(vue) 将Vue实例传进去

        2、Vue3 区别与 Vue2 ,自定义指令方式有所改变,主要还是所使用的钩子函数不一样

猜你喜欢

转载自blog.csdn.net/A88552211/article/details/124344512