16.11.2015, 16:41
|
|
Соединяю Node.js и Ext JS
|
|
Регистрация: 25.06.2009
Сообщений: 1,033
|
|
Перенос классовой системы Ext на Node.js
Можно ли выделить файлы, отвечающие за классовую систему ExtJS?
Чтобы в дальнейшем перенести ее в Node.js.
Или там сильно все привязано к браузеру?
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
|
|
17.11.2015, 11:23
|
Профессор
|
|
Регистрация: 19.11.2012
Сообщений: 178
|
|
всё от Ext.Base
|
|
21.11.2015, 04:44
|
|
Профессор
|
|
Регистрация: 21.05.2015
Сообщений: 321
|
|
Основные файлы в ext/packages/core/src/class/*. Загрузчик придётся свой сделать, наверное - проще будет, чем Boot.js ковырять. Родной Boot.js заточен под браузеры.
|
|
21.11.2015, 11:48
|
|
Соединяю Node.js и Ext JS
|
|
Регистрация: 25.06.2009
Сообщений: 1,033
|
|
А что делает загрузчик? или это вы про Ext.Loader?
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
|
|
24.11.2015, 01:28
|
|
Профессор
|
|
Регистрация: 21.05.2015
Сообщений: 321
|
|
Загрузчик в Ext JS разбит даже не на две, а на три части: Microloader, Ext.Boot и Ext.Loader.
- Microloader используется в боевом режиме для высокоуровневого определения платформы (телефон/таблетка/PC) и загрузки соответствующего приложения, или набора приложений.
- Boot отвечает за абстракцию метода загрузки скриптов и CSS файлов, отслеживание зависимостей при наличии декларации (Ext.manifest, генерируется Cmd), и общую бухгалтерию на уровне скриптов.
- Ext.Loader оперирует уже на уровне классовой системы, реализует динамическую загрузку классов, ведёт списки соответствия имени класса к файлу, пинает Boot на загрузку скриптов и следит за тем, чтобы все классы загрузились. Ну и ещё по мелочи.
Ext.Loader в боевом режиме выключен по умолчанию, поскольку динамическая загрузка не нужна. По сути используется только для разработки и является наследием эпохи до Cmd.
Если быть совсем педантичным, то Ext.Loader в 5+ был растащен на более мелкие куски и теперь часть живёт в Ext.Inventory, часть в Ext.ClassManager (экземпляр Ext.Inventory), и часть в Ext.Loader.
Я всю прошлую неделю провёл в потрохах этой дребедени, поэтому воспоминания ещё трепещут. Спрашивайте, если что интересно. :)
|
|
24.11.2015, 12:47
|
|
Соединяю Node.js и Ext JS
|
|
Регистрация: 25.06.2009
Сообщений: 1,033
|
|
Буду спрашивать, когда займусь уже непосредственным переносом. Так как у меня есть куча классов, которые идентичны как для клиентской части, так и для серверной. И не хотелось бы заниматься поддержкой двух копий каждого класса.
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
|
|
28.11.2015, 16:04
|
|
Соединяю Node.js и Ext JS
|
|
Регистрация: 25.06.2009
Сообщений: 1,033
|
|
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
|
|
30.11.2015, 21:07
|
|
Профессор
|
|
Регистрация: 21.05.2015
Сообщений: 321
|
|
Не уверен, что это что-то работоспособное. Ext 4.0.0 пятилетней давности я бы даже палкой не стал трогать.
|
|
30.11.2015, 22:44
|
|
Соединяю Node.js и Ext JS
|
|
Регистрация: 25.06.2009
Сообщений: 1,033
|
|
Там Колбаскин на пятую перенес, использует в своем проекте янус. Так что рабочее. У него там все перенесено кроме визуальных компонент.
__________________
Хусамов Сухроб, Москва, khusamov@yandex.ru
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
|
|
30.11.2015, 23:04
|
|
Профессор
|
|
Регистрация: 21.05.2015
Сообщений: 321
|
|
Вам виднее, я имел в виду GitHub репозиторий по ссылке. Там зачем-то имеется копия Ext JS 4.0.0, не уверен правда что она вообще используется - смотрел краем глаза.
|
|
|
|