Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.10.2018, 00:10
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

Проблемы с подключением UX в extjs
Приветствую!
В своем приложении у меня не получается подключить UX. Вся библиотека extjs находится в директории: myexample/js/ext-6.2.0
Я скопировал из myexample/js/ext-6.2.0/ папку "ux" со всем содержимым в мое приложение. Структура теперь выглядит так:
test
|---app.js
|
|---app
|    |---controller
|    |---model
|    |---store
|    |---ux 
|    |---view
|---index.html



Затем в app.js перед вызовом приложения я подключаю 'ux':
Ext.Loader.setConfig({enabled:true});
Ext.Loader.setPath('Ext.ux', 'app/ux');
Ext.application({
....

При запуске приложения получаю ошибку:
[Ext.Loader] Synchronously loading 'widget.treepicker'; consider adding Ext.require('widget.treepicker') above Ext.onReady

Версия экста: Ext JS 6.2.0.981
Что я делаю неправильно?
Как корректно подключить UX?
Заранее благодарю.
Ответить с цитированием
  #2 (permalink)  
Старый 19.10.2018, 05:39
Интересующийся
Отправить личное сообщение для Swat2k Посмотреть профиль Найти все сообщения от Swat2k
 
Регистрация: 15.08.2017
Сообщений: 17

Для корректного подключения ux package, просто добавьте пакет "ux" в app.json в секцию requires
Ответить с цитированием
  #3 (permalink)  
Старый 19.10.2018, 09:13
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

Сообщение от Swat2k Посмотреть сообщение
Для корректного подключения ux package, просто добавьте пакет "ux" в app.json в секцию requires
Что именно за файл app.json? Покажите пример подключения 'UX' в секции requires
Ответить с цитированием
  #4 (permalink)  
Старый 19.10.2018, 09:46
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

Если имеется ввиду что подключить пакет 'ux' в app.js, то сделал так:
Ext.application({    
    name: 'BookApp',    
	requires: [        
        'BookApp.ux.TreePicker'        
    ]
...


Загружаю приложение и вижу что запрос идет к /test/app/ux/TreePicker.js и падает с ошибочкой 404.
[Ext.Loader] Some requested files failed to load.

Проверяю в пакете 'ux' наличие файла TreePicker.js - его нет. Да и вообще, прошелся по всем папкам этого пакета и не нашел TreePicker.js
Возможно ли такое что в пакете 'ux' будет не доставать каких либо файлов?
Сам ext качал с оф. сайта сенчи.
Ответить с цитированием
  #5 (permalink)  
Старый 22.10.2018, 16:31
Интересующийся
Отправить личное сообщение для Swat2k Посмотреть профиль Найти все сообщения от Swat2k
 
Регистрация: 15.08.2017
Сообщений: 17

Смотрите
https://docs.sencha.com/cmd/guides/app_json.html

В app.json подключается следующим образом
Код:
{
    ...
    "requires": [
        ....
        "ux"
    ]
    ...
}
Ответить с цитированием
  #6 (permalink)  
Старый 25.10.2018, 11:43
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

Суть в том что у меня нет файла app.json.
Насколько я понял создается он автоматически при создание приложения через sencha cmd, но я подключал библиотеку extjs указывая пути до необходимых файлов в index.html, т.е создавал приложение без sencha cmd
Ответить с цитированием
  #7 (permalink)  
Старый 25.10.2018, 12:56
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

а вот у вас класс используется BookApp.ux.TreePicker
requires: [       
	        'BookApp.ux.TreePicker'       
	    ]

а путь вы настроили для неймспейса Ext.ux а не для BookApp.ux:
Ext.Loader.setPath('Ext.ux', 'app/ux');

это так и задумано?

теперь далее ..вы скопировали каталог ux откуда конкретно? их по дистрибутиву несколько штук можно найти.
Ответить с цитированием
  #8 (permalink)  
Старый 25.10.2018, 18:03
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

Сообщение от siber-biber Посмотреть сообщение
это так и задумано?
Нет, не задумано. Поменял на
Ext.Loader.setPath('BookApp', 'app/ux');

Папку ux скопировал из: ext-6.2.0/packages
в папку app своего приложения.
Ответить с цитированием
  #9 (permalink)  
Старый 25.10.2018, 18:09
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

если хотите использовать индивидуальную загрузку классов для неймспейса ux, то надо чтобы путь был замаплен на каталог ext-6.2.0/packages/ux/classic/src ,,именно там класс который вы не нашли
Ответить с цитированием
  #10 (permalink)  
Старый 25.10.2018, 18:57
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

А если папка со всей библиотекой ext-6.2.0 лежит на сервере по иерархии выше чем папка с приложением app, то Ext.Loader.setPath уже не сможет подключить нужный каталог? Придется всю библиотеку переносить в папку app?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Утечки памяти в ExtJS alexey91 ExtJS 1 28.03.2016 21:02
Вакансия Javascript-программист (ExtJs разработчик) Nevskaya Работа 0 14.10.2015 00:13
Проблемы совместимости при использовании ExtJS в браузерах IE & Opera Allan Stark ExtJS 4 18.09.2012 10:28
Москва, ищу JavaScript программиста отлично знающего ExtJS, от 10 USD / час. maximgb Работа 3 03.08.2010 14:34
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37