uni-app 中的 image 的 error 事件在自定义指令中无法触发,如何解决?

<image mode="aspectFill" :src="item.pic" v-image-error @error='error'></image>
methods: {
  error() {
    console.log( '组件中的 error 事件被触发' )
  }
}
Vue.directive('image-error', {
  inserted(el, binding) {
    el.onerror = function() {
      console.log('自定义指令中的 error 被触发')
    }
  },
})

在组件中直接使用 error 事件就可以触发,在自定义指令中定义的 error 事件就没被触发,如何解决?
image.png

阅读 3.5k
1 个回答

因为 image 组件不一定是原生图片组件,所以不一定会有 onerror 事件。
尝试使用 el.error 来触发看看?或者你监听一下 image 元素的所有事件然后看看图片加载失败触发的事件名是什么。

推荐问题