Javascript 如何配置Babel以正确处理多个文件夹?
我已经使用Babel一段时间了,它使用以下命令将我的ES Next代码正确地转换到Javascript 如何配置Babel以正确处理多个文件夹?,javascript,node.js,npm,babeljs,Javascript,Node.js,Npm,Babeljs,我已经使用Babel一段时间了,它使用以下命令将我的ES Next代码正确地转换到dist文件夹: babel src --out-dir dist --source-maps --copy-files 到目前为止,我所有的Javascript代码都在src中,但现在我想将React视图移动到src旁边的views文件夹中。我将Babel CLI调用修改为: babel src views --out-dir dist --source-maps --copy-files 现在我的问题是,虽
dist
文件夹:
babel src --out-dir dist --source-maps --copy-files
到目前为止,我所有的Javascript代码都在src
中,但现在我想将React视图移动到src
旁边的views
文件夹中。我将Babel CLI调用修改为:
babel src views --out-dir dist --source-maps --copy-files
现在我的问题是,虽然文件被正确编译,但没有一个import
s被正确编译。例如,在我的文件Navigation.js
中,我有一个import
:
import Permissions from "../src/utils/permissions";
这将转化为
var _permissions = _interopRequireDefault(require("../src/utils/permissions"));
巴贝尔跑完之后
当我使用多个源目录时,如何配置Babel来修复导入?我不确定Babel是否能够自己完成这项工作。这是一个很好的翻译工具,但可以把它看作是一个忠实的翻译人员。据我所知,它将传输您的代码,但不会根据所需的输出位置和关系重新插入您的导入语句。因此,您有两种选择:
/src
和src/views
中的所有文件都在dist
中的同一级别结束,则可能需要如下文件夹结构:babel src/src src/views--out dir dist--source maps--copy files
,您的所有文件都将在/dist
中传输到同一级别,并且导入关系都将保持正确
我希望有人会来告诉我我错了,并且有一些
非常适合这个场景重写导入babel插件。这是希望。否则,我认为您必须进行重组,或者深入到webpack中。等等,webpack不是仅用于web吗?我相信是的。您没有指定您的项目不是web项目,所以我假设它是—我的错。这是一个什么样的项目?如果它不是一个网络项目,那么是的,我想webpack不会是一个选项。还有其他构建工具,如rollup、gulp、grunt等,虽然我对它们不太熟悉,但其中一个可能能够处理您的任务。谢谢,我澄清了我的问题。这是一个常规的服务器端节点项目。在做了一些研究后,看起来webpack确实可以用于构建节点项目。我个人从未做过,但这似乎是可能的。我猜这个答案的要点是对你原来的问题说“你不能”。你需要一个构建工具。再说一次,我希望我错了,但我从未见过巴贝尔一个人做你想做的事。
/src
- /src
- /views