1

すべてのスクリプトを 1 つのファイルにまとめるために requireJS オプティマイザを試しましたが、1 つの問題を解決できません。

私のrequireJs構成は

var require = {
    //    'baseUrl': 'static/scripts',
    'paths': {
        'external': 'global/external'
    },
    'waitSeconds': 2,
    //    'enforceDefine': true,
    'deps': ['external/jquery-1.7.2'],
    'config': {

    }
};

requireJsは、他のスクリプトのロードを開始する前に deps にあるすべてのものをロードします。jquery は定義関数と jquery という名前でラップされるため、呼び出すだけでスクリプトにロードできます。

var var $ = require('jquery');

これは、コードが最適化されていない場合にうまく機能します。

問題: r.js を (ノードを使用して - しかし、これは無関係だと思います) 実行すると、オプティマイザーは、jquery の依存関係を解決できないというエラーを出力します。その上でrequireJsオプティマイザFAQには何もありません。「パス」プロパティを構成して遊んでみましたが、何も修正されませんでした。

4

1 に答える 1

1

deps プロパティを削除し、パスに新しい要素を追加しました

var require = {
    //    'baseUrl': 'static/scripts',
    'paths': {
        'external': 'global/external'
        'jquery': 'global/external/jquery-1.7.2'
    },
    'waitSeconds': 2,
...
};

jqueryのようにパスを設定しようとしたため、以前は再生されませんでした

'jquery': 'external/jquery-1.7.2'

外部がに評価されるべきであると考える

'global/external/jquery-1.7.2'

次に、ビルドスクリプトで(またはr.jsの引数として)path.jqueryをもう一度設定すると、機能しました

于 2012-06-18T17:47:10.577 に答える