我正在学习反应。我的src文件夹中的components文件夹中有一个文件website_index.js
。我的src文件夹里面还有一个images文件夹。我试图将旋转木马中的图片链接到图像文件夹中的图片,但无论我输入什么路径都找不到它们。是否无法显示这些图片?
有人请告诉我正确的方法。
import React, { Component } from 'react';
import { Jumbotron, Carousel } from 'react-bootstrap';
class Home extends Component {
render() {
return (
<Jumbotron>
<Carousel>
<Carousel.Item>
<img width={900} height={500} alt="900x500" src="./images/Ian_FMD_400.jpg"/>
<Carousel.Caption>
<h3>First slide label</h3>
<p>Nulla vitae elit libero, a pharetra augue mollis interdum.</p>
</Carousel.Caption>
</Carousel.Item>
<Carousel.Item>
<img width={900} height={500} alt="900x500" src="../images/Ian_FMD_400.jpg"/>
<Carousel.Caption>
<h3>Second slide label</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
</Carousel.Caption>
</Carousel.Item>
<Carousel.Item>
<img width={900} height={500} alt="900x500" src="./src/images/Ian_FMD_400.jpg"/>
<Carousel.Caption>
<h3>Third slide label</h3>
<p>Praesent commodo cursus magna, vel scelerisque nisl consectetur.</p>
</Carousel.Caption>
</Carousel.Item>
</Carousel>
</Jumbotron>
);
}
}
export default Home;
答案 0 :(得分:4)
一种快速而干净的方法是导入图像的方式与导入或require()
模块的方式相同:
import image1 from './path/to/image';
然后从JSX引用该图像:
<img width={900} height={500} alt="" src={image1} />
图像的路径可能会自动为您解决,具体取决于您的捆绑包(webpack等)的设置方式。
另一方面,如果您不以导入模块的方式导入图像(并且您直接从JSX或组件引用内联图像路径),则不需要预先添加图像{ {1}}使用src
(因为它不是导入,只是常规相对路径),所以只需编写内联 ./
调用以指向图像与在HTML中编写的方式相同(其中路径等于相对路径返回到图像目录 relative 到HTML文件):
所以这个:
src
可能会:
<img width={900} height={500} alt="" src="./src/images/Ian_FMD_400.jpg" />
所以回顾一下,导入图像的两种方式有两种不同:
<img width={900} height={500} alt="" src="images/Ian_FMD_400.jpg" />
您还可以通过阅读Correct path for img on React.js
获得一些线索答案 1 :(得分:2)
嗯,你说:
&#34; ...我的src文件夹里面的components文件夹里面有一个文件website_index.js。&#34;
你也说过:
&#34; ...我的src文件夹里面还有一个图像文件夹。&#34;
所以,你的项目结构是这样的:
SRC
| _组件
| _ images
试试这个:
<img width={900} height={500} alt="900x500" src={require('../images/Ian_FMD_400.jpg')}/>