我尝试使用
导入我的SignupLoginForm.jsx
文件
import SignupLoginForm from '../container/SignupLoginForm';
到我的Homepage.jsx
文件。
SignupLoginForm.jsx
位于client/container/SignupLoginForm.jsx
。 Homepage.jsx
位于client/components/homepage/HomePage.jsx
。
我收到此错误:
ERROR in ./client/components/homepage/HomePage.jsx
Module not found: Error: Cannot resolve 'file' or 'directory' ../container/SignupLoginForm in /Users/Proj_V/client/components/homepage
@ ./client/components/homepage/HomePage.jsx 23:23-62
答案 0 :(得分:2)
使用此:
import SignupLoginForm from '../../container/SignupLoginForm';
由于您的container
文件夹距Homepage.jsx
文件两级,因此您需要使用../
两次。
./
,../
-
./
表示当前目录,表示保留在当前文件夹中并在此搜索文件。
../
表示当前目录/文件的父级,表示转到一级并搜索该文件。
例如假设您在这些路径中有两个文件file1.js
和file2.js
,您希望从file1导入file2,将您的文件夹结构想象为树数据结构:
案例1。
file1
- > a/b/c/file1.js
file2
- > a/b/c/file2.js
由于同一文件夹中的文件可以直接导入,如下所示:./file2.js
。
案例2。
file1
- > a/b/c/file1.js
file2
- > a/b/c/d/file2.js
在这种情况下,d
内的文件2位于file1
的同一级别,您可以像下面这样导入./d/file2.js
。
案例3。
file1
- > a/b/c/file1.js
file2
- > a/b/file2.js
在这种情况下file2
出现在file1
的父级,因此您需要使用../
向前迈出一步,如下所示:../file2.js
案例4。
file1
- > a/b/c/file1.js
file2
- > a/file2.js
在这种情况下,file2
出现在file1
的父级父级别,因此您需要使用../
两次升级,如下所示:../../file2.js
简单规则:./
表示在同一文件夹中搜索,../
进行一步操作并搜索。我们也可以使用这样的组合:.././
答案 1 :(得分:0)
除了Mayank的回答,我建议你使用' babel-root-import'插件,它将帮助您导入并要求使用基于路径的路径。
例如:您可以从您的主页访问SignupLoginForm,如下所示:
import SignupLoginForm from '~/container/SignupLoginForm';