How to check for broken images in React JS

后端 未结 5 766
忘了有多久
忘了有多久 2020-12-05 19:25

I\'m writing a module that takes article data from json and shows a large image over the article text, a hero module as they say.

I\'ve got the data and have set it

相关标签:
5条回答
  • 2020-12-05 19:49

    Here is what I did to check if the image is broken. There is an attribute called onError which is called when the image is broken or cannot be loaded. For example, here is the img tag:

    <img id={logo.id} src={logo.url} alt ={logo.name} onError={this.handleImageError} />
    

    How I handled the error:

    handleImageError = e => { //write your logic here.}
    
    0 讨论(0)
  • 2020-12-05 19:58

    There is a native event for images called onerror that lets perform an action if the image cannot be loaded.

    <img onError={this.addDefaultSrc} className="img-responsive" src={newsImage} alt={headline}/>
    
    //in your component
    addDefaultSrc(ev){
      ev.target.src = 'some default image url'
    }
    
    0 讨论(0)
  • 2020-12-05 20:02

    As mentioned, onError is the way to go.

    If you're looking for a component that handles this for you, try https://github.com/socialtables/react-image-fallback

    0 讨论(0)
  • 2020-12-05 20:05

    In case that you know the image's error will be the absence of it like you are looping a gallery of profiles and some of them do not have pictures available, then you can simply insert the image's path as a callback like this:

    <img
       height="auto"
       width={140}
       src={bizLogo || "/img/error.png"}
       alt="test"
    />
    
    0 讨论(0)
  • 2020-12-05 20:15

    According to my understanding you want to see broken images. you should call a method in onError attribute. Check this jQuery/JavaScript to replace broken images

    0 讨论(0)
提交回复
热议问题