2

実行時に条件付きでロード/ロードしないモジュールがいくつかあります。ただし、同梱時のモジュール名はわかりません。私のコードは次のようなものです:

function A(depModule){
    return {
        theActionThatDependsOnThatModule: function(){
            require([depModule], function(dep){
                dep.doSomething();
            });
        }
    }
}

次に、上記のものを消費するモジュールがたくさんあります。次のようなものです。

require.ensure('../window');
var obj = A('../window');
obj.theActionThatDependsOnThatModule()

しかし、ブラウザで「require.ensure is undefined」というエラーが表示されます。私は何を間違っていますか?何か不足していますか?

4

1 に答える 1

0

だから私はちょっとした解決策を見つけました。それは醜く、誰かがそれをより良くする方法を教えてくれるかもしれませんが、それまでの間、私にとってはうまくいきます:

function A(depModule){
    return {
        theActionThatDependsOnThatModule: function(){
            depModule(function(dep){
                dep.doSomething();
            });
        }
    }
}

var obj = A(function(cb){
    require(['./window'], cb);
});
obj.theActionThatDependsOnThatModule()
于 2014-08-19T12:35:52.700 に答える