我已经使用Gulp.js进行了各种不同的实现,其中一些只是简单地压缩单个JavaScript源文件,其中一些是压缩和复制多个文件,而另一些则是围绕使用browserify并将相互依赖的多个文件合并为一个缩小的文件(可以选择在两者之间使用Babel进行转译等)。
但是最近,我遇到了一个独特的场景(对我而言),我从未在其任何实现中都涉及到:将多个CommonJS模块文件串联成一个缩小的构建文件。
考虑以下示例:
有一个名为common.js
的通用文件,其内容如下-
module.exports.add = (a, b) => a + b;
module.exports.subtract = (a, b) => a - b;
module.exports.foo = ...
然后还有另一个(例如index.js
)使用此文件公开的功能之一-
const common = require('./common');
const sum = common.add(1, 2);
console.log(`The sum is ${sum}.`);
当我提供index.js
作为条目时,是否有办法将两个文件串联起来?如果是用于ES6模块甚至是AMD,我可能已经使用过browserify。并不是我还没有尝试过,但是将它用于永远不会在浏览器中运行的东西听起来很奇怪。
感谢您的帮助。
答案 0 :(得分:0)
经过四处查看,发现没有人谈论过做这样的事情(据我所知),我得出结论,根本不需要将模块串联起来。
串联将不会有任何目的(与在网络上不同),并且一个或多个目标文件将驻留在同一本地目录中。我试图解决的问题根本就不存在。因此,我决定为每个源文件维护一个目标文件。