1

古い Dojo ビルド システムから新しいビルド システムに切り替えようとしています。私は髪を引っ張ってきましたが、ビルド プロファイルで指定したカスタム パス マッピングをビルド スクリプトが取得できないようです。したがって、私のプロジェクト構造が次のような場合:

/www/dojo
/www/dojox
/www/dijit
/www/app.profile.js
/www/myapp/package.json      #links to myapp.profile.js
/www/myapp/myapp.profile.js  #standard package profile stub
                             #with test,copyOnly,amd 
/www/myapp/main.js
/www/myapp/bar/hello.js
/www/myapp/bar/sometext.html

ファイルは次のようになります。

//-------------------------------------------
//FILE: app.profile.js
//-------------------------------------------
var profile = (function(){
    return {
        basePath: ".",
        releaseDir: "builds",
        releaseName: "v0_0_1",
        optimize: "closure",
        cssOptimize: "comments",
        action: "release",

        packages:[
        {
           name: "dojo",
            location: "dojo/dojo"
        },
        {
           name: "myapp",
           location: "myapp"
        }
        ],

        prefixes: {
            "foo": "bar" //doesn't seem to work?
        },

        paths: {
            "foo": "bar" //doesn't seem to work?
        },

        loaderConfig:{
        paths: {
            "foo": "bar"  //doesn't seem to work?
        },
    },      

    layers: {
        "mypp/myapp-release": {
            include: [
                "myapp/main"
            ]
        }
    }
};
})();

//--------------------------------------
//FILE: main.js
//--------------------------------------
require(["dojo/_base/html", "foo/hello", "dojo/text!foo/sometext.html"], 
    function(html, Bar, sometext){
        alert(sometext);
    }
);

//--------------------------------------
//FILE: hello.js
//--------------------------------------
require([ ], 
    function(){
        alert("hello!");
    }
);

そして、次のようにビルド コマンドを実行しています。

node /www/dojo/dojo.js load=build /www/app.profile.js

ビルド スクリプトは、依存関係 "foo/hello" が見つからないことを通知しますが、これは bar/hello.js にマップされているはずです。同じことが foo/sometext.html にも当てはまります。

どんな助けでも大歓迎です。ハゲるまで髪を引っ張りたくない!:D

4

0 に答える 0