Проблемы с подключением 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? Заранее благодарю. |
Для корректного подключения ux package, просто добавьте пакет "ux" в app.json в секцию requires
|
Цитата:
|
Если имеется ввиду что подключить пакет '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 качал с оф. сайта сенчи. |
Смотрите
https://docs.sencha.com/cmd/guides/app_json.html В app.json подключается следующим образом Код:
{ |
Суть в том что у меня нет файла app.json.
Насколько я понял создается он автоматически при создание приложения через sencha cmd, но я подключал библиотеку extjs указывая пути до необходимых файлов в index.html, т.е создавал приложение без sencha cmd |
а вот у вас класс используется BookApp.ux.TreePicker
requires: [ 'BookApp.ux.TreePicker' ] а путь вы настроили для неймспейса Ext.ux а не для BookApp.ux: Ext.Loader.setPath('Ext.ux', 'app/ux'); это так и задумано? теперь далее ..вы скопировали каталог ux откуда конкретно? их по дистрибутиву несколько штук можно найти. |
Цитата:
Ext.Loader.setPath('BookApp', 'app/ux'); Папку ux скопировал из: ext-6.2.0/packages в папку app своего приложения. |
если хотите использовать индивидуальную загрузку классов для неймспейса ux, то надо чтобы путь был замаплен на каталог ext-6.2.0/packages/ux/classic/src ,,именно там класс который вы не нашли
|
А если папка со всей библиотекой ext-6.2.0 лежит на сервере по иерархии выше чем папка с приложением app, то Ext.Loader.setPath уже не сможет подключить нужный каталог? Придется всю библиотеку переносить в папку app?
|
Часовой пояс GMT +3, время: 01:40. |