Dojo: создание пользовательской конфигурации


Я пытаюсь создать пользовательскую конфигурацию додзе. Должен признаться, что я не до конца разобрался в официальной документации.

Однако этот учебник был очень полезен до сих пор.

Вот моя файловая структура:

  • додзе-релиз-1.8.3-НИЦ (нетронутой додзе 1.8.3 исходник)
  • mycompany
    • приложение (мои исходные файлы ВКЛ. html, js, css-файлы и скомпилированные dojo файлы)
    • mycompany.профиль.js
    • пакет.json
  • release / / build файлы должны идти сюда
  • освобождение.профиль.js

Здесь вы можете увидеть, как я выполняю сценарий сборки, и я думаю, что ошибка происходит в строке 10

Http://pastebin.com/embed_js.php?i=XrXiUWf2

Содержание моего важного файлы:

Освобождение.профиль.js

 var profile = {
    basePath: "./",
    releaseDir: "./release",

    packages:[
        {
            name: "dojo",
            location: "./dojo-release-1.8.3-src/dojo"
        },
        {
            name: "dijit",
            location: "./dojo-release-1.8.3-src/dijit"
        },
        {
            name: "dojox",
            location: "./dojo-release-1.8.3-src/dojox"
        },
        {
            name: "mycompany",
            location: "./mycompany"
        }
    ]
};

Mycompany / package.json

 {
"name": "app",
"description": "My Application",
"version": "0.1"
}

Mycompany / mycompany.профиль.js

 var profile = (function(){
  copyOnly = function(filename, mid){
    var list = {
    "mycompany/dojo.profile":1,
    "mycompany/package.json":1
    };
    return (mid in list) || /(css|png|jpg|jpeg|gif|tiff)$/.test(filename);
  };

   return {

    resourceTags:{
        test: function(filename, mid){
            return false;
        },

        copyOnly: function(filename, mid){
            return copyOnly(filename, mid);
        },

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

    trees:[
        [".", ".", /(/.)|(~$)/]
    ]
  };
})();
Я надеюсь, что предоставил вам необходимую информацию, и мы сможем решить эту проблему. Это стоило мне целого дня до сих пор.
1 2

1 ответ:

По сравнению с учебником, вы включаете дополнительный каталог - так что несколько вещей должны быть изменены.

Выпуск / профиль.js

{
  name: "app",
  location: "./mycompany/app"
}
  • mycompany / package.json следует переместить в mycompany / app / package.json
  • mycompany/mycompany.профиль.js следует переместить в название_компании/приложение/приложение.профиль.js

В приложении.профиль.js внесите следующее изменение

var list = {
  "app/app.profile.js":1,
  "app/package.json":1
};