Skip to content

Instantly share code, notes, and snippets.

@maccman
Created February 8, 2018 20:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maccman/239f1aeac1230c99c75d1d270c08a6a6 to your computer and use it in GitHub Desktop.
Save maccman/239f1aeac1230c99c75d1d270c08a6a6 to your computer and use it in GitHub Desktop.
import React, { Component } from 'react';
export default class DefaultImage extends Component {
state = {
error: null
}
onError = (error) => {
this.setState({error});
}
getSrc = () => {
const {error} = this.state;
const {src, defaultSrc} = this.props;
if (error || !src) {
return defaultSrc;
} else {
return src;
}
}
render () {
const {defaultSrc, ...props} = this.props;
return (
<img {...props} src={this.getSrc()} onError={this.onError} />
)
}
}
DefaultImage.defaultProps = {defaultSrc: '/default.png'};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment