使用 Gulp 将 ES2015/CommonJS 个模块压缩为一个 CommonJS 模块

Condense ES2015/CommonJS Modules to One CommonJS Module with Gulp

我正在用 TypeScript 编写一个库,我想将它编译成一个 CommonJS 模块。使用 browserify,我可以给它一个文件,让该文件 运行 到 tsifybabelify 生成一个将所有文件合并为一个文件的文件。我基本上想要相同类型的功能,但我需要它来生成一个 CommonJS 模块,以便与 CommonJS 兼容的系统(如 NodeJS)而不是浏览器一起使用。

我找不到执行此操作的选项或插件。我是不是忽略了什么?

您要查找的是--standalone-s选项:

Generate a UMD bundle for the supplied export name. This bundle works with other module systems and sets the name given as a window global if no module system is found.

使用命令行:

browserify main.js --standalone myLib > myLib.js

使用API:

var fs = require('fs');
var browserify = require('browserify');
var b = browserify('./main.js');
b.bundle({standalone: 'myLib'}).pipe(fs.createWriteStream(__dirname + '/myLib.js'));