无法解析导入的模块

时间:2017-10-15 18:28:38

标签: javascript react-native ecmascript-6 expo

我的react-native项目中有以下目录结构。

  project
    |-- src
    |    |-- components 
    |    |    |-- ComponentA
    |    |    |    |-- ComponentA.js
    |    |    |-- ComponentB
    |    |    |    |-- ComponentB.js
    |--App.js
    |--Package.json

在ComponentA.js中我试图像这样导入ComponentB:

import ComponentB from '../../ComponentB'

但是这给了我一个错误(500):

  

无法解析模块../../ComponentB ..

然后我尝试了:

  import ComponentB from './src/components/ComponentB'

但仍然是同样的错误。

我也尝试过:

 import ComponentB from './src/components/ComponentB/ComponentB.js'

但也没有解决方案。

2 个答案:

答案 0 :(得分:0)

如果您是默认导出,那么 import ComponentB from '../ComponentB/ComponentB' 如果您只想使用'../ComponentB',则需要在componentB文件夹index.js

中命名您的文件

由于'./'是同一级别,因此您与ComponentA处于同一级别,并且您尝试达到以下目的:ComponentA/src/.... 当您尝试'../../'时,您的等级提高了2级,因此路径为:'src/ComponentB

答案 1 :(得分:0)

试试这个

import ComponentB from '../ComponentB/ComponentB'

这样做是因为你正在尝试访问组件,但是你没有到达组件,当你使用上面的代码时,它会超出你当前的目录,然后再到组件目录,然后到文件夹{{1}然后命名为ComponentB的文件名。现在,您将能够从文件ComponentB访问ComponentB