使用Babel将文件编译到原始位置

时间:2016-03-24 12:50:21

标签: javascript babeljs

我有一个像以下

的文件夹结构
src
├── a
│   └── test-a.js
└── b
    └── test-b.js

我想使用babel来编译来自./src的文件。所以,如果我运行以下命令,我可以完成它。

./node_modules/.bin/babel ./src/ -d ./dist/

这将创建编译文件(保留树)到./dist目录。但是,我需要编译文件并保存在同一目录中。

例如,树应该看起来像这样

src
├── a
│   └── test-a.js
│   └── test-a.dist.js
└── b
    └── test-b.js
    └── test-b.dist.js

有办法吗?

1 个答案:

答案 0 :(得分:1)

我不知道是否有使用CLI的内置方式(我有点怀疑),但您可以使用API​​编写脚本。在src/**/*.js中执行类似glob的操作,循环遍历每个上调用require("babel-core").transform()的路径名,然后对路径名进行替换,如replace(/\.js$/, ".dist.js")并写入新路径名。可能还有一种方法可以使用CLI将脚本转换为dist/,就像你现在正在做的那样重命名&将这些文件移到src/