首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在react中本地导入图像

在react中本地导入图像
EN

Stack Overflow用户
提问于 2018-06-14 03:19:00
回答 4查看 6.1K关注 0票数 2

我不明白导入在React中是如何工作的。我目前使用的是create-react-app。我在components文件夹中有一个名为images的文件夹:

代码语言:javascript
运行
复制
- src
  - components
    - images

在components文件夹中,我还有一个名为ProductSquare.js的js文件。我正在尝试使用此行从图像文件夹导入图片

代码语言:javascript
运行
复制
import bumper from './images/bumper1.png';

我已经尝试将其更改为仅bumper1.png和许多其他选项。我在这里做错了什么?(希望以后能有更好的方法来做)。

这是程序员在现实世界中导入图片的方式吗?

EN

回答 4

Stack Overflow用户

发布于 2018-06-14 03:23:45

尝试使用<img src={require('./images/bumper1.png')} />

附言:类似的问题是here

票数 2
EN

Stack Overflow用户

发布于 2018-06-14 03:26:33

如果你使用的是像“Webpack”这样的软件( create-react-app就是这么做的),那么你可以直接导入图片(以及大多数其他类型的文件)。它们最终会被转换成某种东西(我相信图像最终会变成一个数据URL)。

如果您的文件夹结构如下所示:

    • components
    • ProductSquare.js
    • images

然后,您应该能够像这样使用图像:

代码语言:javascript
运行
复制
// in ProductSquare.js
import React from 'react';
import bumper from './images/bumper1.png';

class ProductSquare extends React.Component {
  render() {
    return <img src={ bumper } />;
  }
}

如果不是,请仔细检查所有文件的名称是否与您认为的相同(检查拼写错误和其他错误)。

如果一切都是正确的,并且不能正常工作,那么可以尝试在类之前添加console.log(bumper)。然后:

  • 如果它输出的字符串看起来像data:blahblah它应该工作
  • 如果它输出未定义,图像可能没有正确命名
  • 如果它不输出,您可能没有正确使用ProductSquare <

>F224>

票数 1
EN

Stack Overflow用户

发布于 2018-06-14 18:47:09

使用public文件夹

注意:此功能在react-scripts@0.5.0及更高版本中可用。

在公共文件夹中创建一个文件夹,例如,'image',在那里添加你的照片。

在那之后,你可以在任何你想要的地方使用镜像地址,如下所示:

代码语言:javascript
运行
复制
<img className="img1" src="/image/pic.jpg" alt=""/>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50844727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档