2017-03-03 88 views
10

我面临的问题是使用img标签。当单个而言, 下面的代码加载图像:在没有导入的情况下使用JSX在React中显示图像

import image1 from './images/image1.jpg; 
<img src={image1} /> 

但是,下面的代码不会加载:

<img src={'./images/image1.jpg'}/> 
      or 
    <img src='./images/image1.jpg'/> 

我需要遍历JSON,像[{“IMG ':'./ images/image1.jpg','name':'AAA'},{'img':'./ images/image2.jpg','name':'BBB'}]并显示每一个作为名称为页脚的图像。循环很好,但图像无法加载。实际上,我自己无法导入每个要添加的图像。截至目前,我除了使用JSX之外不使用其他任何软件。请高兴。

+0

在浏览器的网络选项卡,这是什么_think_的图片的网址是? –

回答

15

需要导入文件像这样:

<img src={ require('./images/image1.jpg') } /> 
+0

eslint抱怨这说“意外require()。(global-require)”也说“调用require()应该使用字符串文字(导入/不动态 - 要求)” – pixelwiz

+0

@pixelwiz如果您已启用该设置替换'反引号'。 – Win

+0

我实际上必须制作一个单独的文件来导入所有的图像,然后我可以导入该文件并引用图像。感觉有点疯狂,但现在React,Webpack和ESLint看起来很开心。 – pixelwiz

1

require用于静态“进口”,那么你只需要改变你的imports

例子:

var imageName = require('./images/image1.jpg') 
<img src={imageName} /> 
+0

欢迎您:)您可以接受我的答案作为解决您的问题,所以它可以帮助stackoverflow社区 – Robsonsjre

+0

我一直在努力。但我收到一个通知,就像我目前可以接受4分钟后。 – Gayathri

+0

你是对的!它真的有'等待时间'..哈哈 – Robsonsjre

相关问题