0

我正在使用 r.js 优化我的 requirejs 项目。在我的 JS 代码中,我需要用版本号替换别名。当我的build.js文件包含以下内容时,它可以正常工作:

({
    appDir: "../",
    baseUrl: "scripts",
    mainConfigFile: 'project-config.js',
    dir: "../dist",
    uglify: {
        defines: {
            DEBUG: ['name', 'true'],
            VERSION: ['string', '1.2.3.4']
        }   
    }
})

我通过以下方式运行它: node r.js -o build.js

但是,我需要动态传递版本号,因为我想通过一些命令行工具对其进行优化。我已经阅读了UglifyJS 文档--define SYMBOL[=VALUE]中的选项,但无法使其协同工作。

我应该在节点命令中更改什么以将“定义”参数传递给 UglifyJS?我想覆盖 build.js 文件中的 VERSION 定义(或者干脆从文件中删除它)。

4

2 回答 2

1

根据负责 r.js 的 James Burke 的说法,目前还不支持此功能 - 命令行参数目前仅适用于非数组属性,请参阅拉取请求 346

于 2013-08-14T07:05:09.070 回答
0

在命令行中使用 Uglify 的唯一一种方法是使用:

optimize=uglify2

我的参考是来源

于 2016-09-11T22:54:41.327 回答