使用 require() 从相对路径加载图像时找不到模块

礼士桑加尼

我正在尝试从反应组件状态下给出的路径加载图像。使用由 create-react-app 创建的应用程序。得到以下错误:

找不到模块“../assets/images/img-2.jpg”

已检查图像是否存在于路径上。此外,这仅发生在安装 react-router-dom 并设置路由之后。

import React, {Component} from 'react';
import { Carousel,Image } from 'react-bootstrap';


class JumboBanner extends Component {
constructor(props, context) {
    super(props, context);

    this.handleSelect = this.handleSelect.bind(this);

    this.state = {
      index: 0,
      direction: null,
      images : [
        {path:'../assets/images/img-1.jpg', body:{title:'This is title',text:'Kutchi Text'}},
        {path:'../assets/images/img-2.jpg', body:{title:'This is title',text:'Kutchi Text'}},

      ]
    };
  }

  handleSelect(selectedIndex, e) {
    this.setState({
      index: selectedIndex,
      direction: e.direction,
    });
  }

  render() {
    const { index, direction,images } = this.state;

    const corouselItems = images.map(img=> (<Carousel.Item>
        <Image className="d-block w-100" src={require(`${img.path}`)}/>
        {/* <img
          className="d-block w-100"
          src={require(`${img.path}`)}
          alt="First slide"
        /> */}


      </Carousel.Item>) );
    return (
      <Carousel
        activeIndex={index}
        direction={direction}
        onSelect={this.handleSelect}>
        {corouselItems}

      </Carousel>
    );
  }
}
export default JumboBanner;
-testapp
|-public
|-src
|--assets
|-|-images
礼士桑加尼

问题解决了。这是因为我在 src 文件夹中的每个文件夹都有一个 index.js 文件。webpack 和 react-create-app 的默认路径解析器构造了一个数组相对路径,在执行此操作时,它会在 cwd 中搜索 index.js 文件,如果找到,则将所有相对路径映射到该目录或其直接父目录。因此, ../ 或 ./ 将映射到当前工作目录中的路径。我将资产文件夹移动到 cwd 中,问题解决了。虽然这只是一种解决方法,但我相信它可以更好地权衡浪费时间试图找出 webpack 或 react-create-app 样板代码的内部结构。

谢谢大家的帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用相对路径保存我的二进制文件找不到该路径

来自分类Dev

Python:模块中相对路径的使用

来自分类Dev

使用相对路径时无法加载chrome扩展程序内容脚本

来自分类Dev

使用相对路径

来自分类Dev

找不到模块-相对路径

来自分类Dev

找不到模块 - 相对路径

来自分类Dev

在jQuery加载中使用相对路径

来自分类Dev

使用相对路径加载文件

来自分类Dev

Prestashop:使用相对路径保存图像吗?

来自分类Dev

无法使用相对路径设置画布图像

来自分类Dev

无法使用Require加载模块

来自分类Dev

使用相对路径时 currentTime 出现问题

来自分类Dev

我如何使用 -M 标志使用命令行中的相对路径加载 perl 模块?

来自分类Dev

在Crontab中使用相对路径

来自分类Dev

如何使用Rstudio相对路径

来自分类Dev

相对路径使用读取(OpenCV)

来自分类Dev

在recoll中使用相对路径

来自分类Dev

在Crontab中使用相对路径

来自分类Dev

PHP require_once绝对路径与相对路径(不起作用)

来自分类Dev

PHP require_once绝对路径与相对路径(不起作用)

来自分类Dev

在Cordova中使用require加载模块

来自分类Dev

使用 require 加载依赖项

来自分类常见问题

如何使用相对路径在Webpack中使用SCSS(SASS)加载超棒的字体?

来自分类Dev

使用直接路径而不是相对路径时,包含的dbconfig.php文件失败

来自分类Dev

需要Angular组件时找不到相对路径

来自分类Dev

pySpark 本地模式 - 使用 file:/// 与相对路径加载文本文件

来自分类Dev

在 for 循环中使用相对路径加载多个文件

来自分类Dev

如何使用Inkscape将SVG导出为没有相对路径的图像的PDF?

来自分类Dev

使用require()函数而不使用路径

Related 相关文章

热门标签

归档