我正在寻找一种方法来将一些信息添加到最小化文件中。
我找到了here选项,但它对我没用,因为uglifier在添加了包装代码后运行。
答案 0 :(得分:2)
您可以assign a function to the out
key对文件进行后期处理。通过设置此选项,结果不会自动写入文件,因此您必须自己执行此操作。例如:
({
// Let's optimize mainApp.js
name: "mainApp",
optimize: "uglify",
out: function(text) {
// Transform the compiled result.
text = '// Stuff to prepend \n' + text;
var filename = 'outputfile.js';
// By default, the name is resolved to the current working directory.
// Let's resolve it to the directory that contains this .build.js:
filename = path.resolve(this.buildFile, '..', filename);
// Finally, write the transformed result to the file.
file.saveUtf8File(filename, text);
}
})
注意:在上一个代码段中,file.saveUtf8File
is an internal RequireJS API和path
是从Node.js标准库导入的path
module(仅当您使用Node.js运行r.js
时,而不是例如与Rhino或浏览器)。
如果将前一个保存为test.build.js
,则创建一个名为mainApp.js
的空文件并运行`r.js -o test.build.js,然后将出现一个名为“outputfile.js”的文件使用以下内容创建:
// Stuff to prepend
define("mainApp",function(){});