Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.04.2016, 21:08
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

Разный код для development и production версий приложения
Я на этапе sencha app watch пользуюсь Ext.ux.ajax.SimManager для эмуляции ответов на запросы от прокси хранилищ.

Как мне этот код выделить таким образом, чтобы при сборке приложения командой sencha app build код эмуляции AJAX-ответов был исключен?
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
Ответить с цитированием
  #2 (permalink)  
Старый 21.04.2016, 18:55
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

https://www.sencha.com/forum/showthr...10#post1133510
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
Ответить с цитированием
  #3 (permalink)  
Старый 22.04.2016, 13:57
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

На данный момент нашел пока директиву компилятора, код которой в продакшн не попадает.

//<debug>
...
//</debug>
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
Ответить с цитированием
  #4 (permalink)  
Старый 22.04.2016, 21:07
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

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

Сделать это можно в app.json:

"development": {
    "js": [{
        path: "app/store/AjaxSimulation.js"
    }]
}


В KitchenSink есть примеры разных директив для отдельных сборок.
Ответить с цитированием
  #5 (permalink)  
Старый 23.04.2016, 08:52
Аватар для kolka
Кандидат Javascript-наук
Отправить личное сообщение для kolka Посмотреть профиль Найти все сообщения от kolka
 
Регистрация: 07.06.2010
Сообщений: 146

Сообщение от nohuhu
В KitchenSink есть примеры разных директив для отдельных сборок.
Можете указать где.. я не нашел.. возможно плохо ищу..
Ответить с цитированием
  #6 (permalink)  
Старый 25.04.2016, 21:34
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

В app.json приложения KitchenSink есть вот такие структуры:

...

    /**
     * override objects for setting build environment specific
     * settings.
     */
    "production": {
        "output": {
            "appCache": {
                "enable": false
            }
        },
        "cache": {
            "enable": false
        }
    },

    "testing": {
    },

    "development": {
        "fashion": {
            "inliner": {
                "enable": false
            }
        }
    },

    ...


Насколько я помню из обсуждений этого вопроса с Кевином, объекты production/testing/development могут содержать почти все остальные директивы и таким образом перекрывать нужные настройки для конкретной сборки. Какие именно директивы не входят в список "почти", я не знаю. Проще будет попробовать, с большой долей вероятности всё сработает.
Ответить с цитированием
  #7 (permalink)  
Старый 26.04.2016, 09:45
Аватар для Infarch
Профессор
Отправить личное сообщение для Infarch Посмотреть профиль Найти все сообщения от Infarch
 
Регистрация: 06.06.2014
Сообщений: 291

nohuhu, а нет ли внятной документации по app.json? А то там много всего, но из скудных комментариев сложно понять как все это готовить. Вот например я тут вижу "testing", но что это? Я только с "development" и "production" знаком. Fashion тоже зверюшка интересная...
Ответить с цитированием
  #8 (permalink)  
Старый 26.04.2016, 13:02
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

Спасибо за ответ!
Буду проверять
"development": {
    "js": [{
        path: "app/store/AjaxSimulation.js"
    }]
}

Надо будет решить вопросы: какой конкретно код там размещать и в какой момент этот файл подгружается.
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
Ответить с цитированием
  #9 (permalink)  
Старый 26.04.2016, 13:47
Аватар для khusamov
Соединяю Node.js и Ext JS
Отправить личное сообщение для khusamov Посмотреть профиль Найти все сообщения от khusamov
 
Регистрация: 25.06.2009
Сообщений: 1,033

А почему строка

"path": "${app.dir}/sim/DataSimulation.js"


не сработала?

${app.dir} = пусто!
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
Ответить с цитированием
  #10 (permalink)  
Старый 26.04.2016, 21:30
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

@khusamov,

Трудно сказать, не видя логов. ;)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прокоменьте код для datepick jQuery DorianLeroy jQuery 0 24.05.2011 16:19
Меню для приложения Empty2112 Общие вопросы Javascript 3 15.09.2010 16:16
В зависимости от значения флажка выводить разный php код ZusulZoid Элементы интерфейса 2 06.09.2010 20:20
Код вывода формы для добавления сайта в соц.закладки и в избранное mav1 Элементы интерфейса 5 31.08.2010 15:21
Пошаговый вывод скрипта для IE всех версий. Zidky Элементы интерфейса 10 17.06.2009 17:27