我有一个页面,在一张桌子上有许多客户徽标。一个表格单元格试图获得这样的标志:
<TableCell className={classNames(classes.urlDealCell, classes.dealCell)}>
{this.getLogo(deal.CompanyWebsite)}
</TableCell>
getLogo
是:
getLogo = url => {
const source = `https://logo.clearbit.com/${url}`;
return <img src={source} width="30" />;
};
80% 的情况下,徽标恢复正常,如果没有deal.CompanyWebsite
,我可以提供默认徽标。但我需要处理另一个边缘情况:
如果对 img 源的请求失败并显示如下 URL:https://logo.clearbit.com/absoluteGarbage,我可以在 React 中以某种方式检查并回退到默认徽标吗?
在尝试分配 的src
属性之前,我是否必须尝试对每个徽标的 src URL 发出 GET 请求img
?如果是这样,这将使图像请求的数量增加一倍,这对于较大的页面结果集来说会很糟糕。
<img src={someurl}
onError={(e)=>{e.target.onerror = null; e.target.src="image_path_here"}}/>
当图像加载失败时,onError 被调用。使用这个函数来做你的逻辑
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句