Помощь! У меня есть приложение ExtJS 4.2 MVC, которое будет содержать множество различных представлений. Однако каждый пользователь будет иметь доступ к простой доле всего набора. Очевидно, я не хочу загружать все Представления для каждого пользователя! Кроме того, каждое «разрешенное» представление должно быть загружено после входа пользователя.ExtJS4 MVC Lazy Загрузка
В прошлом (до MVC) я использовал Ext.create() для динамической загрузки моих файлов классов .js. Тем не менее, я пытаюсь использовать шаблон дизайна MVC, и все, что я читал в Интернете, показывает, что это, по-видимому, является ограничением ExtJS 4.2 MVC. Это правда? Ниже я попытался до сих пор.
Во-первых, определение пользовательского зрения (базовый пример контейнера):
Ext.define('My.custom.TestView', {
extend: 'Ext.container.Container',
alias: 'widget.myCustomTestView',
html: 'Test',
initComponent: function() {
this.callParent(arguments);
}
});
Во-вторых, определение контроллера, который пытается загрузить/экземпляр пользовательского вида:
Ext.define('My.custom.TestController', {
extend: 'Ext.app.Controller',
// Empty array because I want to
// add views during run-time.
views: [
],
init: function() {
// Attempt #1: This produces an error.
this.getView('My.custom.TestView').create();
// Attempt #2: This returns null.
Ext.widget('myCustomTestView');
// Attempt #3: This appears it might work, but it's ugly!
Ext.create('My.custom.TestView');
this.getView('My.custom.TestView').create();
}
});
Хотя # 3 единственное, что не дает ошибок, это не выглядит правильным для меня. Любые предложения/комментарии?