Как лучше всего добавить обработчик нажатий кнопок Ext JS после рендера? - PullRequest
0 голосов
/ 19 октября 2019

Я пытаюсь выяснить, как лучше добавить слушатель нажатия кнопки позже, после рендера.

Например, если у меня есть этот код, как бы мне добавить прослушиватель щелчков позже?

Ext.application({
    name : 'Fiddle',

    launch : function() {
        var button = Ext.create('Ext.Button', {
            text: 'Button'
        });
        Ext.Viewport.add({ xtype: 'container', padding: 10, items: [button] });


        // TODO How can I add a click listener later?
        setTimeout(function() {

        }, 1000);
    }
});

Ниже приведен пример

На основе приведенного ниже ответа приведен небольшой фрагмент кода. https://fiddle.sencha.com/#view/editor&fiddle/309g

Ext.application({
    name : 'Fiddle',

    launch : function() {
        var button = Ext.create('Ext.Button', {
            text: 'Button'
        });
        Ext.Viewport.add({ xtype: 'container', padding: 10, items: [button] });

        button.on("tap", function () {
            alert("tap 1 works");
        });

        button.addListener("tap", function() {
            alert("tap 2 works");
        });

        button.el.on("click", function() {
           alert("click works");
        });
    }
});

1 Ответ

1 голос
/ 19 октября 2019

Вам необходимо использовать метод addListener (или для сокращенного метода).

button.on("tap", function () {
    alert("clicked");
});

Проверка в скрипке https://fiddle.sencha.com/#view/editor&fiddle/309e

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