如何从ExtJs中的函数调用函数

时间:2013-05-07 01:41:13

标签: javascript sencha-touch extjs4.1 extjs-mvc

我的应用程序中有一个控制器在extjs中。我在该控制器中有一个方法,即做一些操作。现在我必须从该方法调用另一个方法。但是当我这样做时,前一个方法不起作用请给我一个适当调用它的方法。这是我的代码....

 afterChartLayout: function(){
    if(this.initializedEvents==true) return;
    this.initializedEvents=true;
    Ext.getCmp('barColumnChart').series.items[0].on('itemmousedown',function(obj){

        alert(obj.storeItem.data['source']+ ' &' + obj.storeItem.data['count']);

    });
有人请帮忙......

1 个答案:

答案 0 :(得分:1)

Ext.Component.on函数的第三个参数是可选的范围参数。如果在那里插入“this”关键字,则将在回调函数中保留范围。应该这样:

afterChartLayout: function(){
    if(this.initializedEvents==true) return;
    this.initializedEvents=true;
    Ext.getCmp('barColumnChart').series.items[0].on('itemmousedown',function(obj){

        alert(obj.storeItem.data['source']+ ' &' + obj.storeItem.data['count']);
        //Call other function on the controller
        this.otherControllerFunction('paramOne');
        //Make sure to include "this" on the next line!!
    }, this);
}