我有一個如下所示的結構。如何從ExtJS中同一級別的按鈕引用容器
我可以引用(從按鈕處理程序)up.down我的組件,但我想知道是否有更正確的方法來做到這一點。
Ext.application({
name: 'MyApp',
launch: function() {
Ext.create('Ext.container.Viewport', {
items: [
{
tpl: 'Name: {first} {last}',
data: {
first: 'Peter',
last: 'Kellner'
},
padding: 20,
width: 200,
height: 200,
style: {
border: '2px solid red'
},
resizable: true,
itemId: 'myComponentItemId',
listener: {
resize: {
fn: function(component, width, height) {
console.log("w/h:" + width + " " + height);
}
}
}
},{
xtype: 'button',
text: "Disable",
handler: function() {
debugger;
this.up().down('#myComponentItemId').disable();
}
}
]
});
}
});
我認爲這是一個好方法。但是,我通常會指定我要去哪裏以防萬一我更深地嵌套按鈕等。 'btn.up('form')'如果你需要從控制器中找到一個組件,有時我會使用'Ext.ComponentQuery.query('#itemId')[0]' – weeksdev
我試圖避免componentQuery它是應用程序的全部範圍。似乎應該有一些簡單的方法來獲得我沒有看到的姐妹節點。謝謝。 –