私はrequire.jsを使用してモジュールをロードしようとしています.app.jsには次のものがあります:
require.config({
baseUrl: "js"
});
alert("hello world"); // for debugging
require(['eh2'], function(eh2) {
alert("nothing here"); // for debugging
});
アプリケーションを実行すると、app.js がロードされているにもかかわらず、必要なモジュールがロードされません。「hello world」は実行されますが、「nothing here」は実行されません!
HTML ページのスクリプト タグは次のようになります。
<script type="text/javascript" src="js/lib/require.js" data-main="app"></script>
eh2.js は js フォルダーにあり、define ステートメントでラップされています。
define(["./screens/Screens"], function(screens) {
return {
// code here
};
});
私は何を間違っていますか?おそらく、screens.jsの下にあるサブモジュールをロードするときに、require.jsがサイレントに失敗していますか?
Screens モジュールのコードは次のとおりです。
define([ "screens/TitleScreen", "screens/GameScreen" ], function(titleScreen, gameScreen) {
return {
screenFuncs: {
"TitleScreen" : titleScreen.TitleScreen,
"GameScreen" : gameScreen.GameScreen,
},
buildScreen: function(data) {
var func = screenFuncs[data.type];
var screen = new func(data.params);
return screen;
},
};
});
とにかく、定義呼び出しのパスは、私がいるjsファイルの現在の場所、またはapp.jsで定義されたルートに相対的である必要がありますか?