反应-动态加载图像

时间:2019-01-12 22:01:38

标签: reactjs image

我有一个JSON响应,其中包含大量数据,例如图像位置。

然后,当我尝试加载图像时,React无法找到它。

类似问题的答案均​​无济于事,因为它们都告诉我要导入图像,但我需要将其加载到袖带上。例如:

{Object.values(this.state.advertisements).map((advertisement, i) => {
...
<img width='80px' src={require(advertisement.image)} alt='house'/>

然后我收到一条错误消息“找不到模块”。

路径如下:

  

图片:./images/house.JPG

2 个答案:

答案 0 :(得分:2)

如评论中所述,require用于包括二进制模块或其他JS文件。最初将它与webpack一起使用时,很少用于包含图像等的实际数据。

根据返回的数据,假设数据定义明确并且指向外部图像的实际链接,写<img src={advertisement.image} />是可行的。

答案 1 :(得分:0)

我认为我们不需要要求。

src={`./images/${advertisement.image}`}可以很好地导入图像。

为了安全起见,您可以添加环境变量来存储服务器URL和本地URL。

在生产中src={`${url}/images/${advertisement.image}`}将从服务器加载图像。