0

I have a component that I feed with props.

When an image throws a 404 I want to load a fallback image. So far so good.

However the @error function never fires when an image is broken and I can't figure out why! I never get 'hello event' in the console.

The component is on the first level of a nuxt page, my setup is a static SPA.

I tried to implement it as mentioned at the end of this github issue: https://github.com/vuejs/vue/issues/5404

<template>
  <div class="channel">
     <div class="img">
       <img :src="imgUrl" :alt="name" :title="name" @error="getFallBackImage" />
     </div>
  </div>
</template>

<script>
  export default {
    data: function() {
      return {
        chanCover: this.cover
      }
    },
    props: {
      name: {
        type: String,
        required: true
      },
      cover: {
        type: String,
        required: true
      }
    },
    computed: {
      imgUrl() {
        console.log(this.chanCover)
        return "channels/"+this.chanCover+".jpg"
      },
    },
    methods: {
      getFallBackImage(event) {
        console.log("hello event")
        this.chanCover = "default"
      }
    }
  }
</script>

11
  • Not sure about the github issue but I've seen this one before, hope it may help. PS: mentioning me like that in the comments doesn't me any kind of notification. Reach me directly if you want me to be 100% sure of seeing your question. Commented Mar 24, 2022 at 23:50
  • Thanks for the pointer @kissu that might actually work! Commented Mar 25, 2022 at 13:13
  • Keep us updated. Commented Mar 25, 2022 at 18:32
  • I am still curious why error is not working here, but I switched everything towards webpack so the proposed solution did work! Thanks a bunch. Commented Mar 27, 2022 at 20:09
  • What were you using before? Commented Mar 27, 2022 at 20:11

0

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.