Добавление ext-all-rtl-debug.js в продакшн
Здравствуйте, как сделать так, чтобы в продакшне был файл ext-all-rtl-debug.js?
|
В файле app.json в разделе production нужно создать раздел js такого вида:
"js": [ { "path": "${framework.dir}/build/ext-all-rtl-debug.js" } ] |
добавил, сделал sencha app build, но в директории production соответствующая папка с файлом не появилась
|
Почему вы решили что она должна там появится???
|
потому что в сгенерированном файле index.html указана строчка
<script type="text/javascript" src="ext/build/ext-all-rtl-debug.js"></script> |
и еще хотел спросить правильно ли я организовал файл app.js?
структура примерно такая: /* * Настройка "среды" приложения, * загрузка необходимых модулей/библиотек/файлов * */ /** * Конфигурация лоадера * */ Ext.Loader.setConfig({ enabled: true, disableCaching: false, paths: { 'og': 'app', 'theme': 'ext/classic/theme-neptune/overrides/', }, }); // ожидание ответа - 30 минут Ext.Ajax.setTimeout(30*60*1000); Ext.Loader.loadStyle = function(url) { var new_link = document.createElement('link'); new_link.setAttribute("rel", "stylesheet"); new_link.setAttribute("type", "text/css"); new_link.setAttribute("href", url); document.getElementsByTagName('head')[0].appendChild(new_link); }; Ext.Loader.loadStyle('build/development/og/resources/og-all_2.css'); /** * Необходимые файлы стилизации для тем * (Без них появляются бордеры на всех темах кроме neptune) * */ Ext.Loader.loadScript({url:'app/widgets/themechanger/panel/Panel.js'}); Ext.Loader.loadScript({url:'app/widgets/themechanger/panel/Table.js'}); /** * Загрузка необходимых библиотек * */ Ext.Loader.loadScript({url: 'resources/lodash.js'}); Ext.Loader.loadScript({url: 'resources/FileSaver.js'}); Ext.Loader.loadScript({url: 'gnt/gnt-all-debug.js'}); Ext.Loader.loadScript({url: 'resources/gntTplPatch.js'}); /** * Загрузка глобальных классов Ext * */ Ext.require([ // global stuff 'og.Utilities', 'og.widgets.themechanger.ThemeChangerController', 'og.Localizator', 'og.widgets.themechanger.ThemeChanger', 'og.widgets.GlyphTool', 'og.widgets.GlyphToolToggler', // plugins 'og.plugins.ToolbarSeparator', // widgets 'og.widgets.DataSaver', // samples 'og.samples.Combo', 'og.samples.Table', // stores 'og.store.Templates', 'og.store.FilterTemplates', ]); /** * Иницализация загруженных классов (если нужна) * */ Ext.onReady(function() { og.Localizator.init() .then(function() { var c = og.widgets.themechanger.ThemeChangerController; c.changeThemeGlobal(); }) .then(function() { Ext.QuickTips.init(); Ext.setGlyphFontFamily(Glyphs.DEFAULT_FONT_FAMILY); }) .then(createApp)['catch'](function(err) { console.error(err); alert('app start has failed'); }); }); /** * Запуск приложения * */ function createApp() { Ext.application({ name: 'og', extend: 'og.Application', }); } |
У меня так в этом файле только строки 106-110 )))
1) Стили и скрипты лучше отдать на загрузку через Sencha Cmd. 2) Всякие глобальные загрузки require лучше организовывать на местах, где они их используют. 3) 021-ая строку я разместил бы в init приложения в определении класса приложения. 4) 011 - это наверное единственное что тут оставил Цитата:
Этим точно Sencha Cmd должна заниматься. И вообще, каталог build не для загрузки предназначен. Он временный. Его используют для сборки проекта, а потом содержимое в дистрибутив кладут. Цитата:
каталог resources предназначен для ресурсов: картинки, шрифты и т.п. муть. Но никак не для скриптов. . |
Часовой пояс GMT +3, время: 02:56. |