【发布时间】: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