Extjs4 Ext.define和handler范围
我的问题和你的完全一样,不幸的是,这个问题没有明确的答案 我知道Extjs4 Ext.define和handler范围,extjs4,Extjs4,我的问题和你的完全一样,不幸的是,这个问题没有明确的答案 我知道作用域:这个不起作用,因为它只会将作用域从按钮更改为窗口,根据我的搜索和线程中给出的建议,我得出结论,唯一的解决方案是 扩展网格面板时定义别名 使用this.up('alias')遍历DOM以获取网格面板 这真的是唯一的解决办法吗?谢谢。是的。组件中处理程序中的作用域通常是调用其处理程序的实例化组件。tbar中的按钮实际上是一个组件,其实例化形式成为作用域。你应该像你说的那样移动到你的面板以得到你想要的对象。是。组件中处理程序中的作
作用域:这个
不起作用,因为它只会将作用域从按钮更改为窗口,根据我的搜索和线程中给出的建议,我得出结论,唯一的解决方案是
this.up('alias')
遍历DOM以获取网格面板这真的是唯一的解决办法吗?谢谢。是的。组件中处理程序中的作用域通常是调用其处理程序的实例化组件。tbar中的按钮实际上是一个组件,其实例化形式成为作用域。你应该像你说的那样移动到你的面板以得到你想要的对象。是。组件中处理程序中的作用域通常是调用其处理程序的实例化组件。tbar中的按钮实际上是一个组件,其实例化形式成为作用域。你应该像你说的那样遍历到你的面板,以获得你想要的对象。根据文章中的示例,试试这个
initComponent: function() {
...
var me = this;
me.tbar = [
{
text: 'Start',
iconCls: 'icon-start'
}, {
text: 'Stop',
iconCls: 'icon-stop'
}, {
text: 'Eintrag hinzufügen',
iconCls: 'icon-add',
scope: me,
handler: function() {
me.addEntry();
}
}
],
}
根据文章中的例子,试试这个
initComponent: function() {
...
var me = this;
me.tbar = [
{
text: 'Start',
iconCls: 'icon-start'
}, {
text: 'Stop',
iconCls: 'icon-stop'
}, {
text: 'Eintrag hinzufügen',
iconCls: 'icon-add',
scope: me,
handler: function() {
me.addEntry();
}
}
],
}