我想使用factor-bundle来查找我的browserify入口点的公共依赖项,并将它们保存到一个公共包中:
https://www.npmjs.org/package/factor-bundle
因子包文档使得在命令行上看起来很容易,但是我想以编程方式进行,我正在努力解决这个问题.
我当前的脚本是这样的(我正在使用reactify来转换react的jsx文件):
var browserify = require('browserify');
var factor = require('factor-bundle')
var glob = require('glob');
glob('static/js/'/**/*.{js,jsx}', function (err, files) {
var bundle = browserify({
debug: true
});
files.forEach(function(f) {
bundle.add('./' + f);
});
bundle.transform(require('reactify'));
// factor-bundle code goes here?
var dest = fs.createWriteStream('./static/js/build/common.js');
var stream = bundle.bundle().pipe(dest);
});
Run Code Online (Sandbox Code Playgroud)
我试图弄清楚如何使用factor-bundle作为插件,并为每个输入文件指定所需的输出文件(即每个条目files)
我想使用gulp来构建JavaScript文件包.
例如,我的项目中有以下结构:
供应商包括(1-2),本地包括(3-4)和捆绑文件(5-6).
供应商包括只是与bower或composer一起安装的第三方JavaScript库.它们可以是CommonJS,AMD或者只是一个普通的jQuery插件.
我想在bundle文件中指定依赖关系,如下所示:
(function() {
// Vendor includes.
include('vendor1');
include('vendor2');
// Local includes.
include('includes/include1.js');
include('includes/include2.js');
// Some code here.
})();
Run Code Online (Sandbox Code Playgroud)
我希望gulp处理这个源文件并创建一个最终的分发文件(bundle),确保所有依赖项(包括)在一个文件中合并在一起.所以我可以从我的HTML中包含foo.js,所有依赖项都可以使用.
我希望有一个清晰而强大的系统来管理项目中的所有依赖项并构建分发文件.