如何在extjs4中的另一个函数中调用函数?

时间:2013-03-04 14:05:29

标签: extjs extjs4 extjs4.1

我在extjs4工作。如何在另一个成员函数(showSubject)中调用成员函数(hellotest)?

我正在hellotest tabchange subjectBar事件中添加对showSubject的调用(这是object[object object] error undefined function函数的一部分)。我尝试使用范围调用函数调用,但这没有用,我收到了以下错误:Ext.define('Am.DnycontentcategoriesController', { extend: 'Ext.app.Controller', init: function () { this.control({ //'viewport > panel >Contentcategories': 'Contentcategories': { render: this.showSubject, } }); }, hellotest: function () { console.log("inside hello test function"); }, showSubject: function () { //console.log(this.hellotest()); subjectBar.on('tabchange', function () { //here I am getting error this.hellotest(); var tab = subjectBar.getActiveTab(); -------- }); },

这是我的一些代码:

{{1}}

1 个答案:

答案 0 :(得分:4)

scope设置为this

showSubject: function () {
    subjectBar.on('tabchange', function () {
        this.hellotest();
        var tab = subjectBar.getActiveTab();
    }, this);
}
  

执行处理程序函数的范围(此引用)。默认为Element

http://docs.sencha.com/ext-js/4-1/#!/api/Ext.EventManager-method-on