Sencha Touch fireEvent - PullRequest
       18

Sencha Touch fireEvent

1 голос
/ 10 февраля 2011

У меня есть главная панель, состоящая из подпанелей, и я хотел бы запустить событие на главной панели и прослушать его на подпанели.

Я могу запустить событие в подпанели ивсе работает, но я не могу показаться, что событие было запущено с главной панели.

Мое пространство имен для вспомогательной панели - "test.testCard", и я попытался запустить событие на нем безуспешно.

1 Ответ

3 голосов
/ 14 июня 2011

Вот пример того, как это сделать:

Ext.setup({
    onReady: function() {
        var mainPanel = new Ext.Panel({
            fullscreen: true,
            layout: 'fit',
            renderTo: Ext.getBody(),

            listeners: {
                'mycustomevent': function() {
                    alert('event fired!');
                }
            },

            items: [
                {
                    items: [
                        {
                            html: 'My inner panel'
                        },
                        {
                            xtype: 'button',
                            text: 'Click me!',
                            handler: function() {
                                mainPanel.fireEvent('mycustomevent', this);
                            }
                        }
                    ]
                }
            ]
        });
    }
});

Вы видите, что я создаю ссылку на mainPanel, а затем ссылаюсь на нее позже в своем коде в обработчике кнопок, где я затем вызываю fireEvent со своим пользовательским событием. Затем в моем mainPanel я добавляю слушателя для mycustomevent.

И, как отмечалось ранее, лучше всего публиковать сообщения на форумах Sencha , поскольку вы получите гораздо более быстрый ответ.

...