Предполагяю, что на 20 формах тормозов не будет, если, конечно, не загружать таблицы из 50000 ячеек (и то только во время отрисовки).
Если вы считаете, что динамическая генерация компонентов ускорит работу приложения, можно запускать Ext.create('класс.Компонента') только при клике по соответствующему пункту меню и добавлять его в контейнер при помощи add() или renderTo.
У такого подхода есть свои недостатки. Я стремлюсь дистанцироваться от него как можно дальше. В том числе и из-за того, что отсутствующие компоненты не слышат события, на которые им следовало бы отреагировать.
Если вы опасаетесь, что поиск компонентов по строковым селекторам может стать причиной медленной работы приложения, то это вряд ли, поскольку в эту систему встроен механизм кэширования.
Если вас беспокоит большое количество файлов классов, которые нужно подгрузить перед запуском приложения, то для боевой эксплуатации приложение собирается в один файл и минифицируется.
Если ожидаете, что с сервера нужно будет подгрузить слишком много данных для всевозможных форм и это вызовет задержку, то просто не грузите все данные с сервера сразу через autoLoad. Вместо этого подгружайте данные в обработчиках событий beforerender и т.п.
Вместо layout: 'fit', можно попробывать layout: 'card', но отложенная отрисовка компонентов может вызвать затруднения на перовом этапе, поэтому не советую.
|