Browserify缩小和连接文件
我有一个纯粹基于Web的应用程序(即无节点服务器),我希望能够为Web应用程序的每个页面绑定我所有的JS文件和CSS文件。
我正在使用Gulp来简单地将我的JS和CSS文件缩小并连接成一个包,但是发现我提供这些文件的顺序是随机发出的(如果你问我......就不可接受)。 我尝试了更多随机结果的gulp-order和其他流排序模块。
我想尝试browserify但我被困在两件事
module.exports时,我需要使用module.exports吗? 想想我的网络应用程序是非常基础的。它需要jQuery,引导程序和我自己的库。 没有必要以正确的顺序包含这些文件的复杂性 browserify而不是命令行时,它似乎尝试并捆绑它需要的每一件事情? 我只想捆绑我的app.js具有require()的东西 例如。
var browserify = require('browserify');
var fs = require('fs');
var b = browserify();
b.add('./app.js');
b.transform({
global: true
}, 'uglifyify');
b.bundle()
.pipe(fs.createWriteStream('./bundle.js'));
当我运行browserify build.js它可能browserify build.js 100个文件输出到标准输出中。 我试图复制当我运行browserify -g uglifyify app.js > bundle.js时发生的情况 - >这需要app.js中的所有browserify -g uglifyify app.js > bundle.js ()并将其捆绑到一个新文件中。
如果您希望能够在应用程序的其他部分require您的模块/代码,则需要使用module.exports 。 否则,你不需要导出任何东西。
Browserify仅绑定所需的依赖关系,但它也是递归地执行此操作,这意味着如果您的应用程序需要库a和库a需要库b,那么browserify将捆绑您的代码,库a和库b。
