美文网首页
React replace img src onError

React replace img src onError

作者: NOTEBOOK2 | 来源:发表于2018-06-27 10:04 被阅读0次

页面在加载图片的时候,如果图片资源不存在,为了更好的用户体验,我们一般会用一张默认图片替换,提醒用户当前图片缺失。
但还有一种情况是图片地址存在,只是图片地址出错了返回了404错误,这时也需要使用一张默认图片替换。
然而我们的设计师给我的是一个SVG文件,SVG文件我们都是封装成组件的形式调用,所以我无法生成一个图片链接替换。
在参考了以下链接后,我动手写了一个组件。
https://stackoverflow.com/questions/34097560/react-js-replace-img-src-onerror

组件的大体逻辑如下:
1 如果图片正常,则渲染28行的图片。
2 this.state.reveal状态初始为false,表示不显示默认的替换图片。
3 如果onError事件被触发,则调用revealDefaultImage方法,将this.state.reveal状态更改为true.
4 如果图片地址不存在或者地址错误,则显示25行的默认替换图片。

完整源码:


DefaultImage.tsx

父组件调用:


相关文章

网友评论

      本文标题:React replace img src onError

      本文链接:https://www.haomeiwen.com/subject/bqxbyftx.html