<img src='要显示的图片路径' onError={(e) => {e.target.onerror = null;e.target.src="占位图片路径"}} />
onError:当图片加载出现错误,会触发。经常在这里事件里头写入 将图片导向默认报错图片,以免页面上出现红色的叉叉或者出现图片破裂的图标。但是如果备用图片也错误了,就会造成死循环的问题,前端就可能挂掉,这时候再添加上onerror = null就好。
react中可以用上面这个
onerror 原生的html中, 可以使用下面这种:
<img src="要显示的图片路径" οnerrοr="οnerrοr=null;src="占位图片路径"> (在react中使用这个不起作用)
另外 ,还可以通过判断图片是否有宽和高:
// 检测图片是否存在
const checkImgExists = imgurl => {
var ImgObj = new Image(); //判断图片是否存在
ImgObj.src = imgurl;
//没有图片,则返回-1
if (ImgObj.fileSize > 0 || (ImgObj.width > 0 && ImgObj.height > 0)) {
return true;
} else {
return false;
}
}