如何指定使用优化器压缩哪些Require.js模块,哪些不是?

时间:2012-07-11 21:54:23

标签: javascript node.js requirejs

将Require.js优化器与Node.js一起使用,我只想压缩一些项目文件。如何指定要压缩的文件?这是我当前的node.js脚本:

var requirejs = require('requirejs');

var config = {
baseUrl: '/common',
name: 'main',
out: '/compressed'
};

requirejs.optimize(config, function (buildResponse) {
//buildResponse is just a text output of the modules
//included. Load the built file for the contents.
//Use config.out to get the optimized file contents.
var contents = fs.readFileSync(config.out, 'utf8');
});

我只是想压缩共同的文件。主要也是共同的。有些共同的文件是我不想压缩的依赖项。优化器如何选择要合并的文件?

1 个答案:

答案 0 :(得分:1)

我不认为Require.js构建系统是这样工作的;这是一种全有或全无的操作。从网站(http://requirejs.org/docs/optimization.html):

  

然后,构建系统将跟踪main.js和的依赖关系   将它们注入appdirectory-build / scripts / main.js文件。

但是,您可以提供大量选项:

https://github.com/jrburke/r.js/blob/master/build/example.build.js

并且基于此,看起来您最好的选择是将您不想要的模块标记为“存根”模块。从页面:

  

在优化文件中指定要存根的模块。优化器会   使用这些模块的源版本进行依赖关系跟踪和   插件使用,但在将文本写入优化层时,这些   模块将获得以下文本