2

Layout Manager と RequireJS で Backbone を使用しています。

以下に示すように、View1 は 2 つの依存関係に依存します。このアプリケーションには、2 つの deps を持つ View1 とは異なり、「jquery.fileupload」のみに依存する View2 という名前の同様のビューもあります。

define(['jquery.fileupload', 'jquery.fileupload-ui'], function (dep1, dep2) {

    var View1 = Backbone.View.extend({

        ...

    });

    return View1;

});

問題は、「jquery.fileupload-ui」(2番目の依存関係)は、それに依存し、いくつかのプラグインエラーを引き起こすビューにアクセスしない場合でも、requirejsによってロード/評価されているように見えることです(基本的なFileuploadプラグインを使用しています。 one view, and extended fileupload plugin in another view).

アプリの初期化時に 2 番目の依存関係を読み込まないようにし、ビュー内でのみ読み込むにはどうすればよいですか? ビュー 1 の定義に require() 呼び出しをネストできると思いますが、呼び出しがネストされている場合に値を返す方法がわかりません。

4

1 に答える 1

0

view1 モジュールをモジュールロードするたびに、「jquery.fileupload-ui」がロードされます。view1 をロードする特定のケースでのみこのモジュールが必要な場合は、特定のコード パスに到達した場合にのみ、「jquery.fileupload-ui」に view1 の require() を含めることができます。

require(['jquery.fileupload-ui'], function(jqui){...});これを行うには、ライブラリが必要な view1 内の特定のメソッドにa を追加します。

これがあなたの質問に答えているかどうかはわかりませんが、そうかもしれません。

于 2013-04-19T16:17:34.677 に答える