在React中动态设置<img />的src属性,可以通过以下步骤来避免在呈现时抛出404错误:
constructor(props) {
super(props);
this.state = {
imageUrl: ''
};
}
componentDidMount() {
fetch('https://example.com/image.jpg')
.then(response => response.blob())
.then(blob => {
const imageUrl = URL.createObjectURL(blob);
this.setState({ imageUrl });
})
.catch(error => {
console.error('Error fetching image:', error);
});
}
render() {
const { imageUrl } = this.state;
return (
<div>
{imageUrl && <img src={imageUrl} alt="Dynamic Image" />}
</div>
);
}
这样,当组件呈现时,会先进行异步请求获取图片URL,并将其存储在state中。当图片URL存在时,才会渲染<img />元素,避免抛出404错误。
推荐的腾讯云相关产品:腾讯云对象存储(COS),它是一种安全、稳定、低成本的云端存储服务,适用于存储大量非结构化数据,如图片、音视频、文档等。你可以使用腾讯云COS来存储你的图片,并在React中动态设置<img />的src属性为COS中的图片URL。
腾讯云COS产品介绍链接地址:https://cloud.tencent.com/product/cos
领取专属 10元无门槛券
手把手带您无忧上云