1

端末から 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(){})

この出力がわかりません。モジュールがまったく出力されないのはなぜですか? 特にoptimize: 'none'と書いたのにuglify.jsが実行されるのはなぜですか? -o を実行しても r.js がエラーをスローしないのはなぜですか?

4

1 に答える 1

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 という名前のモジュールをビルドしたことがわかります。

于 2012-09-24T16:13:28.787 に答える