Как добавить слушатель для серии диаграмм ExtJS4 внутри контроллера? - PullRequest
0 голосов
/ 06 марта 2012

Я хотел бы знать, как добавить itemmouseup слушатель ряда диаграммы в контроллер?

Метод инициализации моего контроллера выглядит следующим образом:

init: function() {
    this.control({
        'candidateDistribution > treepanel' : {
            itemclick: this.treeStoreItemClickHandler
        },
        '#candidateDistributionButton' : {
            click: this.candidateDistributionButton_ClickHandler
        },
        'competitorAnalysis #slaWiseEmprDistriGrid series': {
            itemmouseup: this.sLA_ItemMouseUpEventHandler
        }
    });
},

В этом случае itemmouseup обработчик событий organizationAnalysis #sLAWiseEmprDistriGrid series не работает, но обработчики событий для всего остального работают нормально.

Я пытался изменить запрос компонента на competitorAnalysis > #slaWiseEmprDistriGrid series или competitorAnalysis > #slaWiseEmprDistriGrid[series], но он не работает.

Мне пришлось добавить этот обработчик события itemmouseup в код работающей серии диаграмм.просто отлично, но я думаю, что это разрушающий шаблон MVC.

Код для моей диаграммы выглядит следующим образом:

xtype: 'chart',
itemId: 'slaWiseEmprDistriGrid',
store: 'SLAWiseCompetitorDistribution',
flex: 2,
animate: true,
legend: {
    position: 'right'
},
insetPadding: 25,
series: [{
    type: 'pie',
    field: 'empCount',
    showInLegend: true,
    listeners: {
        'itemmouseup': function(item) {
            var record = item.storeItem;
            var slaWiseEmpListStore = Ext.data.StoreManager.lookup('SLAEmployerList');
            slaWiseEmpListStore.proxy.extraParams['paramFirstDimensionValue']= record.get('name');
            serviceLineWiseEmpListStore.load();
        }
    }
}] // end of series configuration

Поэтому я хотел бы знать, почему этот обработчик событий itemmouseup не работает вконтроллер?

Также в будущем я хочу преобразовать это приложение в приложение, похожее на веб-рабочий стол, но я не могу найти информацию / документацию / учебник на сайте документации extjs.Где я могу получить учебник / документацию по разработке приложения для настольного компьютера?

Заранее спасибо!

1 Ответ

1 голос
/ 06 марта 2012

Вы можете установить это событие в контроллере в 2 этапа.

  1. Добавление слушателя к событию рендеринга диаграммы
  2. В этом слушателе настройте события серии.

Что касается настольного приложения - я могу только предложить рассмотреть этопример: http://dev.sencha.com/deploy/ext-4.0.7-gpl/examples/desktop/desktop.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...