EXTJS,无法将事件处理程序绑定到控制器

时间:2012-05-21 12:56:35

标签: javascript node.js extjs

我正在使用带有Node.JS的EXTJS,并且在EXTJS MVC框架的上下文中处理事件时遇到了困难。

在视图的“类定义”中定义事件侦听器时,我能够轻松注册单击事件,但似乎无法将此代码移动到控制器中。

以下是我目前的代码:

//Icon.JS (VIEW)

Ext.define('GeekFlicks.view.Icon', {
    extend: 'Ext.button.Button',
    alias: 'widget.icon',
    height: 48,
    width: 48,
    text: 'icon',
    draggable: true
});

// Icon.JS(CONTROLLER)

Ext.define('GeekFlicks.controller.Icon', {
extend: 'Ext.app.Controller',

models: ['Icon'],
stores: ['Icons'],
views: ['Icon'],

init: function () {
    this.control({          
        'listener': {
            click: function(c) {
                alert('working');
            }
        }
    });
},
});

有关EXTJS如何处理这类活动的任何帮助或解释都将非常有用,非常感谢!谢谢。

1 个答案:

答案 0 :(得分:1)

this.control更改为:

'icon': {
    click: function(c) {
       alert('working');
    }
}

你基本上需要让控制器知道哪个元素要控制。我还建议阅读在控制器中使用refs: []以便更轻松地访问可视元素和视图。

相关问题