【问题标题】:Having to use full file path for import statements in React必须在 React 中为导入语句使用完整文件路径
【发布时间】:2018-01-23 20:50:33
【问题描述】:

我过去在做一个新的 React 项目时从未遇到过这个问题。出于某种原因,我必须从它们的完整路径名中导入模块才能使它们工作。

这是一个例子:

import {
  List,
  ListItem,
} from 'react-md/lib/Lists';
import { Avatar } from 'react-md/lib/Avatars';

在过去,我无需任何额外的工作就能做到这一点。

import {
  Avatar,
  List,
  ListItem,
} from 'react-md';

项目结构:

my-app/
  README.md
  node_modules/
  package.json
  public/
    index.html
    favicon.ico
  src/
    components/
      AllOfMyComponentsAreHere
    App.css
    App.js
    App.test.js
    index.css
    index.js
    logo.svg

提前致谢

【问题讨论】:

  • 你能发布你的 webpack 配置吗?特别是解析器部分?或者你用什么来编译这个?
  • 我没有使用 webpack。这只是一个使用 npm install -g create-react-app 构建的新项目。
  • create-react-app 在后台使用 webpack,它解析到某些根文件夹。那你能把你的文件结构贴出来吗?
  • 嗯,一定是设置出了问题。您应该只需要从components/ 导入。这有点奇怪。尝试这样做,看看你想出了什么。它可能以一种奇怪的方式链接。
  • 所以,我想我知道发生了什么事。 create-react-tools 可能还创建了一个 index.js(x) 文件,该文件导入并导出了所有组件,这是我可以解释如何从一个文件中导入所有组件的唯一方法。如果需要,您可以在组件文件夹中执行相同的操作。导入时,您不应该在 src 文件夹之前需要任何东西。试试看,让我们知道。

标签: reactjs npm ecmascript-6


【解决方案1】:

创建项目时发生错误。为了解决这个问题,我创建了一个新项目,安装了我需要的依赖项并将我的组件目录复制到新项目中。

感谢 iHowell 的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多