javascript - RequireJS 优化器前置

标签 javascript requirejs r.js

我正在寻找一种方法来将一些信息添加到最小化文件中。

我找到了选项 here ,但它对我来说没有用,因为 uglifier 在添加包装器代码后运行。

最佳答案

你可以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 pathpath module从 Node.js 标准库导入(仅当您使用 Node.js 运行 r.js 时,而不是使用 Rhino 或在浏览器中运行时)。

如果将之前的内容保存为 test.build.js,请创建一个名为 mainApp.js 的空文件并运行 `r.js -o test.build.js ,然后将创建一个名为“outputfile.js”的文件,其中包含以下内容:

// Stuff to prepend 
define("mainApp",function(){});

关于javascript - RequireJS 优化器前置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24479368/

相关文章:

javascript - 如何调用其他文件中的RequireJS函数?如何分离RequireJS文件?

javascript - 如何访问 ReactJS 中的更新不变性助手

javascript - 如何在优化文件之外实例化 requirejs 中的优化模块?

javascript - 服务器端 requirejs 优化 (r.js) 多页站点

javascript - React中ajax后计数

javascript - 如何在内容可滚动的情况下隐藏滚动条?

javascript - 使带有图像的 anchor 标记可点击

javascript - Angular 如何将表单组添加到 TR 组件?

javascript - RequireJS define() 不调用回调

javascript - RequireJS 中的动态要求,出现 "Module name has not been loaded yet for context"错误?