1

多分私は愚かなのかもしれませんが、この記事をまったく理解できません: https://dojotoolkit.org/documentation/tutorials/1.10/build/

実際の例やより良い記事はどこにありますか? 私は、他の RequireJS ベースのビルド ツールをより適切な手順でグーグル検索するところまで来ています。15分ほどでr.jsを動かすことができましたが、dojoでは動かないようです。

私のプロジェクトのファイル構造は次のとおりです。

  • 道場
  • ジジット
  • ドジョックス
  • アプリ (このアプリのすべてのカスタム AMD モジュールが含まれています)
  • lib (非 AMD js ファイル)
  • main.js (メインの起動ファイル)
  • app.profile.js
  • パッケージ.json

main.js、アプリ内のすべて、および使用している dojo モジュールを 1 つのファイルに連結したいだけです。難しすぎてはいけません!しかし、リリース フォルダー内のすべての JS ファイルをコピーするだけで、それだけです。何も連結していないようです。

ここに私の app.profile.js があります:

var profile = (function(){
    var copyOnly = function(filename, mid) {
            var list = {
                "./app.profile": true,
                "./package.json": true
            };
            return (mid in list) ||
                /^\.\/lib\//.test(filename) ||
                /(png|jpg|jpeg|gif|tiff|html)$/.test(filename);
        };


    return {
        basePath: "./",
        releaseDir: "./build",
        releaseName: "prod",
        action: "release",
        layerOptimize: "closure",
        optimize: "closure",
        cssOptimize: "comments",
        mini: true,
        stripConsole: "warn",
        selectorEngine: "lite",

        packages:[{
            name: "dojo",
            location: "dojo"
        },{
            name: "dijit",
            location: "dijit"
        },{
            name: "dojox",
            location: "dojox"
        },{
            name: "app",
            location: "app"
        }],

        layers: {
            "dojo/dojo": {
                include: [ "dojo/dojo", "main" ],
                customBase: true,
                boot: true
            }
        },

        resourceTags: {
            copyOnly: function(filename, mid) {
                return copyOnly(filename, mid);
            },
            amd: function(filename, mid) {
                return !copyOnly(filename, mid) &&
                        /\.js$/.test(filename);
            }
        }
    };
})();
4

1 に答える 1