Поручите инструментам Sencha SDK связывать другие JS-файлы, указанные в приложении.формат JSON
мой app.json
файл приложения Sencha touch 2 содержит.
"js": [
{
"path": "sdk/sencha-touch.js"
},
{"path": "js/mootools-1.2.5-core.js"}, // I want these files to be bundled too
{"path": "js/mootools-1.2.5.1-more.js"}, // <----------+
{"path": "js/soundmanager2-nodebug-jsmin.js"}, // <----+
... // <----+ and there are more.
...
{
"path": "app.js",
"bundle": true, /* Indicates that all class dependencies are concatenated into this file when build */
"update": "delta"
},
теперь я вижу, когда я взываю sencha app build production
он компилирует все классы sencha в гигантский . Но все мои другие классы просто сжаты для построения каталога. Они не сцеплены. как я могу включить их в app.js
?
Ф. А. В.
-
ваш файл json правильно написан, правильно?
Да,
app.json
написано без какого-либо синтаксиса ошибка. Проект успешно строится на вызовеsencha app build production
2 ответов
после просмотра исходного кода и разговора с разработчиками позади Cmd представляется, что в настоящее время невозможно.
однако, поскольку файл сборки написан на JavaScript, теоретически, не потребуется много, чтобы изменить его и добавить эту функциональность в Cmd.
вы можете найти файл сборки Sencha Touch в:
CMD-ROOT/plugins/touch/current/app-build.js
здесь CMD-ROOT
расположение sencha
command-что вы можете узнать, используя which sencha
.
в моей системе (OSX) путь:
/Users/Robert/bin/Sencha/Cmd/3.0.0.250/plugins/touch/current/app-build.js
надеюсь, это поможет вам.
обновление
похоже, что после разговора с другим разработчиком Cmd это действительно возможно. Есть 2 шага, которые вам нужно сделать, чтобы это произошло:
1) Добавить skipFrameworkFile
свойство в каждый ресурс JS, который вы хотите связать. Это говорит компилятору не копировать ресурс при построении приложение.
{
"path": "resources/js/jquery.js",
"skipFrameworkFile": true
},
"path": "resources/js/jquery2.js",
"skipFrameworkFile": true
}
2) требуется каждый из файлов в вашем app.js С помощью @require
тег. Это говорит компилятору включить каждый из ваших файлов в ваше приложение.файл js.
//@require resources/js/jquery.js
//@require resources/js/jquery2.js
для SenchaCmd 3.2 решение rdougan не сработало для меня. Однако вместо использования:
'skipFrameworkFile: true
Я
'x-bootstrap': true
(глядя на исходный код SenchaCmd), и это сработало!
другие шаги такие же, как у rdougan
надеюсь, что это помогает. Ура!--3-->