使用 Babel 编译带有依赖项的 javascript

ago*_*dis 5 javascript dependencies node.js ecmascript-6 babeljs

如何使用babel-cli模块编译具有所有必需依赖项的 ES6 JS 代码?例如。

我有下一个项目结构:

/lib
 /packageA
   /node_modules
   - package.json
   - index.js
 /packageB
   /node_modules
   - package.json
   - index.js
/app
- index.js
- package.json
Run Code Online (Sandbox Code Playgroud)

我导入包packageApackageB在 中,所有组件都是使用 ES6 语法编写的,除了在 中/app/index.js安装的包之外。npmnode_modules

我想使用所有依赖项进行编译,但如果不显式提供和/app/index.js的路径,就无法找到一种简单的方法。packageApackageB

我找到了这个模块https://github.com/mairatma/babel-deps,但是还有其他工具/方法/原生 babel Soultions 吗?

bol*_*lav 6

如果您用它编译多个文件,babel它将连接这些文件。如果您想要的是获取app/index.js包含依赖项的已编译文件,我建议使用诸如rollup之类的东西。

如果您决定使用汇总,那么rollup.config.js我认为您想要的将是这样的:

import nodeResolve from 'rollup-plugin-node-resolve';
import babel from 'rollup-plugin-babel';
import commonjs from 'rollup-plugin-commonjs';

export default {
  entry: 'index.js',
  dest: 'app/app.js',
  plugins: [
    babel(),
    nodeResolve(), 
    commonjs()]
};
Run Code Online (Sandbox Code Playgroud)

然后运行rollup -c