ExtJS 4 MVC - как загрузить только текущий контроллер и связанные с ним данные? - PullRequest
0 голосов
/ 26 ноября 2011

как мы знаем, в Ext.application есть свойство / config / опция 'controllers' (называйте как хотите). Таким образом, мы можем дать какие контроллеры у нас есть. А затем для контроллеров мы можем указать, какие представления у них есть.

Мой вопрос заключается в том, существует ли способ сообщить приложению Ext о текущей паре контроллер / действие в зависимости от URL (как это делается, например, в PHP - Zend, платформах Code Igniter)? (чтобы не иметь каждый контроллер, просмотрите в загруженных и выполненных соответствующих массивах)

В настоящее время я использую свое собственное решение. Я использую этот код в файле app.js:

url = document.URL.split("/");
var contreollers = [];
var views = [];

if( url.length <= 4 ){

controllers = ['index'];
views = ['index/index'];
}
else{

if( document.URL.indexOf('index.php') >= 0 ){

controllerPos = 4;
}
else{

controllerPos = 3;
}

controllers = [url[controllerPos]];

if( url.length > controllerPos+1 ){

views = [url[controllerPos]+'/'+url[controllerPos+1]];
}
else{

views = [url[controllerPos]+'/index'];
}
}

Лучший, Ваагн

1 Ответ

0 голосов
/ 13 января 2012

Если вы хотите, чтобы файлы загружались только так, как вам нужно, вы должны заглянуть в Динамическую загрузку, примерно на 1/5 пути вниз по странице в Sencha Blog .

Возможно, вам придется переключиться на структуру MVC, которую Сенча предложил использовать для Ext JS 4. Вы можете найти несколько руководств, связанных со структурой MVC и архитектурой приложения, в Руководствах Sencha Doc .

...