使用RequireJS进行优化的奇怪输出

时间:2012-09-21 19:46:50

标签: javascript requirejs

我正在尝试从终端优化javascript模块。这是构建文件(在一个名为build.js的文件中)我正在运行它:

({
    appDir: '.',
    baseUrl: '.',

    optimize: 'none',
    dir: '.',

    stubModules: ['cs'],

    paths: {
        'cs': 'cs',
        'coffee-script': 'coffee-script'
    },

    modules: [{
        name: 'main',
        exclude: ['coffee-script']
    }]
})

在终端,我正在运行

r.js -o name=build out=main-built.js

以下是main-build.js的结果内容:

({appDir:".",baseUrl:".",optimize:"none",dir:".",stubModules:["cs"],paths:{cs:"cs","coffee-script":"coffee-script"},modules:[{name:"main",exclude:["coffee-script"]}]}),define("build",function(){})

我不明白这个输出。为什么我的模块根本没有输出?为什么在我专门编写优化时运行uglify.js:'none'?为什么r.js在运行-o时没有抛出任何错误?

1 个答案:

答案 0 :(得分:0)

“名称”是启动器模块的名称。这实际上和你的构建名称相同,所以这可能就是混淆的原因......

build.js
({
    name: 'mymodule', // replace this by the name of your first module, the wrapper.
    appDir: '.',
    baseUrl: '.',

    optimize: 'none',
    dir: '.',

    stubModules: ['cs'],

    paths: {
        'cs': 'cs',
        'coffee-script': 'coffee-script'
    },

    modules: [{
        name: 'main',
        exclude: ['coffee-script']
    }]
})

我与节点node r.js -o build.js

一起使用的命令行

我不是requireJS专家或其他任何东西,我发现这些我认为是错误的东西。您可以看到r.js在文件末尾构建了一个名为build的模块。