Как стать автором
Обновить

Комментарии 41

Выглядит круто. Вот думаю, стоит ли делать админку на Ext. С одной стороны очень мощно, с другой — админка одной закрытой CMS, с которой я работал, была на Ext и субъективные впечатления у меня очень негативные (плохая расширяемость, сложный для понимания непосвященных в Ext JS код, далеко не такое быстродействие, как хотелось бы видеть). Кроме того хочется что-то легкое.

p.s.: Сразу же просьба преждевременно не упрекать в велосипедизме, я вовсе не пишу свою супер-CMS, речь идет о специфическом ПО. А аргументированно похоливарить можно, и это даже одобряется
Посмотрите в сторону Qooxdoo — сравните.
Ух, да вы мазахист… До появления Ext это был единственный подобный фреймворк, но он больше подходит для написания программ для школьных контрольных — это про версии 4 летней давности. Qooxdoo хорош сам по себе, но то, как его переделывают почти после каждого релиза, заставляет плакать разработчика.
Насчет расширяемости это не проблема Ext и в тоже время не проблема для Ext. Просто полистайте статьи на их сайте там есть уйма примеров хороших примеров в том числе которые помогают с расширяемостью проекта. Быстродействие JS упирается не в фреймворк, а в логику приложения которое вы пишите, возможно для «ускорения» необходимо просто пересмотреть подход. Если надо что-то «легкое», то Ext можно не открывать, сделать одно всплывающее окошко можно и без навесов. Ну, а если вам надо полнофункциональное приложение, то добро пожаловать в документацию Ext, без нее конечно же никак, на одном спинном мозге там не проехать )

Выше написанное из личного опыта работы с Ext.
пробовал реализовать CRUD с RowEditor. В итоге: при создании два запроса, при редактировании идет запрос на контроллер создания. При удалении ничего не происходит. Бился, бился. Ничего не добился… :)
EditorGridPanel? Я что-то не встречал пока что RowEditor… )
А вы как делали удаление. Обычно это делается вручную вот так

store.remove(record);

при это все прекрасно работает.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
var w  = new Ext.Window({
      width : 400,
      height : 400
   });
   var w2 = new Ext.Window({
      width: 200,
      height : 200
   });
   w2.add({
      xtype : 'button',
      text  : '16 px'
   });
   w.add(w2);
   w.show();
   w2.show();


Все нормально. Что должно было случиться?
НЛО прилетело и опубликовало эту надпись здесь
Проблема с комбобоксом решается очень просто ;) просто нужно задать для листа контейнер ;)
Зачем растягивать button на 16 пикселей?
НЛО прилетело и опубликовало эту надпись здесь
Промахнулся…

Как вариант можно попытаться с layout что-то замутить.
vbox или hbox layout, с align: stretch
Этот комбобокс можно ставить например в меню, только соответственно немного подправить функцию getListParent

Ext.namespace('Ext.menu');

Ext.menu.ComboBox = Ext.extend(Ext.form.ComboBox, {
   onViewClick : function(doFocus){
      var index = this.view.getSelectedIndexes()[0],
      s = this.store,
      r = s.getAt(index);
      if®{
         this.onSelect(r, index);
      }else {
         this.collapse();
      }
   },
   getListParent : function() {
      return this.ownerCt.ownerCt.ownerCt.ownerCt.getEl();
   },
   setValue : function(val) {
      if(val !== false) {
         Ext.menu.ComboBox.superclass.setValue.call(this, val);
      }
   }
});

Ext.reg('menucombo', Ext.menu.ComboBox);
Ну да и при нужде можно его в Ext.Window запихнуть
Как вариант можно попытаться с layout что-то замутить.
vbox или hbox layout, с align: stretch
НЛО прилетело и опубликовало эту надпись здесь
Ну так… Если что-то более-менее серьезное делать, то без копания в сырцах никак не обойтись, я лично еще не встречал идеальных фреймворков.
НЛО прилетело и опубликовало эту надпись здесь
А на javascript? ;)
НЛО прилетело и опубликовало эту надпись здесь
Ну вот, мне почему-то кажется достойных конкурентов extjs нет. Все таки различная среда (браузеры) и ограничения самого языка накладывают свои требования. :)
Может быть ZK — zkoss.org
Я вижу тут какие-то проблемы с пониманием что такое вообще extjs :) может стоит написать несколько статей по основам?

На данный момент extjs это самый на мой взгляд логично построенный и легко расширяемый javascript… кхм скажем так инструментарий (не ругаться), который я когда-либо использовал.
Начать уже с того что он написан с большим уклоном в ООП, в самых хороших традициях. Из этого следует что расширять его тоже просто.
Далее, неплохая документация. Люди которые ругаются на документацию extjs просто не вникали в суть.
Ну что еще… Да, легко читаемый код…
Я даже не говорю про грид там или другие компоненты…

Есть правда и недостатки. Самый большой это конечно то что extjs очень тяжелый фреймворк и если предполагается что ваши наработки будет использовать куча народу, у которого не понятно какие ресурсы, лучше 100 раз подумать.
Еще что… DOM сгенерированный extjs выглядит довольно чудовищно, особенно для хорошего верстальщика.

В общем если кому-то интересно могу написать несколько статей. Как по основам, так и по собственным наработкам
Далее, неплохая документация. Люди которые ругаются на документацию extjs просто не вникали в суть.
И в чём суть, можно поинтересоваться?

Наша компания (большой институт) пару лет назад заплатила за поддержку и пр. Даже с платной поддержкой у них проблемы, я уже не говорю про качество документации.
Спустя год мы отказались от их услуг ввиду плохой поддержки и нежелания следовать стандартам доступности (они ответили, что это не входит в их приоритеты).
Я разве что-то про поддержку говорил?) А что на счет доступности? Код у них открыт и вполне доступен. Большая часть описана в API, остальную можно посмотреть в сырцах
Я другую доступность имел ввиду — accessibility.
Документация для разработчика у них достаточно хорошая. Но это осознаешь только после того, как «въедешь» в тему :)
А до того — адский ад, поскольку how-to или еще каких материалов для начинающих мало. А на русском — вообще крохи.
Множество моментов приходится вылавливать в форумах, или задавать вопросы самому там же.
Я уверен, что это такая политика у них — недостаточная документация. Или платите за тех-поддержку и задавайте вопросы, или разбирайтесь сами — код открыт.
НЛО прилетело и опубликовало эту надпись здесь
Еще лицензию можно считать недостатком.
Про лицензию не говорю, ребята неплохо поработали и заслуживают денег :)
НЛО прилетело и опубликовало эту надпись здесь
Возможно :)
А я чуть не убился когда делал на 2.3 что-то. Очень тяжелая штука получилась.
Здравствуйте, вот и мне поступила задача разобраться с Ext.Direct и связать его с проектом на Java+Spring+Tomacat и так д… ExtJs используется в качестве веб интерфейса. Ну а я в направлении JEE пока новичок.
Ищу литературу — оч мало всего. Надеюсь здесь ответят на парочку вопросов.

Есть ли аналоги Ext.Direct? Какие? Где искать?

Что мне обязательно нужно прочитать, чтоб разобраться с этой темой и подружить Ext.Direct с нашей темой?

Спасибо.
На счет аналогов. Лично я считаю что данный момент extJS на голову лучше других. Чтобы найти аналоги в гугле вводите «extjs VS» =)))
На счет литературы… Сам учился в основном на примерах с официального сайта. Туториалах на английском с того же сайта.
:) Извините, вы кажется не совсем поняли, что я спрашивал.
Я не спрашивал о ExtJs, я спрашивал о Ext.Direct и о способах внедрения.
Вот на сенче тема, где указаны разработки под конкретные языки.
Сенча

Вот, что более менее рабочее
Слишком захламлено, как мне кажется
А вот это нравиться

Или не использовать постороннее, а лепить свое?

Я имею введу Ext.Direct мне его нужно связать с текущим проектом который работает в связке Java+Spring+Tomacat, думаю так понятней, что я хочу спросить…
Спасибо.
Прошу автора переложить картинки на другой image-hosting. Статья интересная, полезная, но без картинок — не полная.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории