【发布时间】:2019-04-22 09:49:16
【问题描述】:
在我的 React 项目(带 Webpack)中,我的文件夹结构如下:
├── myfile.js
├── Report
├── index.js
基于我的research,我应该能够在myfile.js 中导入Report 模块,因此:
import { Report } from './Report';
但这不起作用。我得到了错误:
尝试导入错误:“报告”未从“./Report”导出。
但是,确实如此。
import { Report } from './Report/index';
我的Report/index.js 有以下导出:
// export default class Report extends Component { // this was a typo
export class Report extends Component {
// etc
}
我该如何解决这个问题或至少解决它?
顺便说一句,我最初使用默认导出/导入,但我更改为一个命名的,希望它会有所作为。它没有。
更新。我真的很抱歉,但这篇文章最初并错误地在 index.js 中添加了 export default。这不是文件中的实际内容,它可能导致一些回答者走错了路。如上所述,当我将导入从 import Report 更改为 import { Report } 时,我确实将其更改为 export。所以导入和导出应该在任何一种情况下都匹配(命名或默认),但都不起作用。
【问题讨论】:
-
因为您将其导出为默认值,您应该直接导入它:
import Report from './Report';,花括号将用于命名导入(不使用默认值)。 -
@AustinGreco 与我的错误帖子相反(自更正后),我实际上没有默认导出。当我切换到括号导入时,我切换到了命名导出。换句话说,
default这个词在切换后真的不在我的代码中。我很抱歉。
标签: javascript reactjs import export