我在Google上搜索过但没有找到任何问题的答案...
我有一个工具栏里面有多个按钮。我如何将click事件委托给工具栏中的每个按钮,而不必编写如下内容:
{
xtype: 'button',
text: 'Click me',
handler: function() {
// do something...
}
}
每个按钮?
答案 0 :(得分:3)
根据你的意见,我会做这样的事情:
Ext.define('MyContainer', {
extend: 'Ext.container.Container',
initComponent: function() {
var handler = this.handleButton;
this.defaultType = 'button';
this.items = [{
text: 'A',
key: 'itemA',
handler: handler
}, {
text: 'B',
key: 'itemB',
handler: handler
}, {
text: 'C',
key: 'itemC',
handler: handler
}, {
text: 'D',
key: 'itemD',
handler: handler
}];
this.callParent();
},
handleButton: function(btn) {
console.log(btn.key);
// do something with key
}
});
Ext.onReady(function() {
new MyContainer({
renderTo: document.body
});
});