2

こんにちは、助けてくれてありがとう!

baseUrl への相対パスを検索する Dojo の要求を取得できません。私の tManager/pageList.js オブジェクトに必要なリクエスト パスは、"js/tManager/pageList.js" である必要があるときに、"/tManager/pageList.js" から離れています。「js/」をrequireパスに追加すると問題なく動作しますが、これらはすべて相対的なものにしたいと思っています。これが私のコードです。

<script type="text/javascript">
var dojoConfig = {
    baseUrl: "js/",
    isDebug: true,
    tlmSiblingOfDojo: false,
    async: false,
    packages: [
        { name: "dojo", location: "lib/dojo" },
        { name: "dijit", location: "lib/dijit" },
        { name: "dojox", location: "lib/dojox" },
        { name: "tManager", location: "tManager/" }
    ]
};
</script>
<script type="text/javascript" src="js/lib/dojo/dojo.js"></script>
<script type="text/javascript">
require([
    "dojo/dom",
    "dojo/ready",
    "tManager/pageList.js"
], function (dom, ready, pageList) {
    ready(function () {
        alert("hello world");
    });
});
</script>

これが私のフォルダー構造です:
\
\js\
\js\lib\
\js\lib\dojo\
\js\lib\dijit\
\js\lib\dojox\
\js\tManager\

事前に助けてくれてありがとう!

4

1 に答える 1

3

あなたがAMDモジュールであると仮定すると、 の拡張機能をtManager/pageList.js取り除きます。それ以外の場合は、モジュールをロードする代わりに汎用スクリプト インジェクションを実行しています。.jsrequire

require([
    "dojo/dom",
    "dojo/ready",
    "tManager/pageList"  // <= do not use .js extension for AMD modules
], function (dom, ready, pageList) {
    ready(function () {
        alert("hello world");
    });
});
于 2012-09-22T17:50:21.900 に答える