我的应用程序中有一个控制器在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']);
});
有人请帮忙......
答案 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);
}