有沒有什麼辦法可以將一些配置(對象屬性)添加到創建的extobject中。ExtJS 3.動態添加配置
var thePanel = new Ext.Panel({
border: false
});
thePanel.addpendConfigs({ //How to?
height: 40,
region: "north"
});
有沒有什麼辦法可以將一些配置(對象屬性)添加到創建的extobject中。ExtJS 3.動態添加配置
var thePanel = new Ext.Panel({
border: false
});
thePanel.addpendConfigs({ //How to?
height: 40,
region: "north"
});
使用Ext.applyIf
。 從docs
複製配置的所有屬性,如果他們不已經 存在OBJ。
這裏的定義是:
applyIf(Object obj, Object config) : Object
否則使用Ext.apply
複製配置的所有屬性設置爲obj。
定義:
apply(Object obj, Object config, Object defaults) : Object
我是來自設定區北你wan't到面板中添加與邊界佈局的容器猜測...我相信你可以做這樣的事情
thePanel.setHeight(40);
thePanel.region = 'north';
container.add(thePanel);
container.doLayout();
的doLayout方法應強制在所有組件的佈局重新計算...
編輯:
對於通用的解決方案檢查Ext.apply
var config = {
height: 40,
region: "north"
}
Ext.apply(thePanel,config);
但我認爲你還需要給力的佈局重新計算像上面
據我所知,一旦對象已經被實例化,你不能簡單地重擊新的配置選項進去。它起泡太多(例如,比如說你想覆蓋「items」數組,這會影響你的實際對象)。
通常ExtJs有一個方法來做你想做的事情。
thx快速回答。但我正在尋找通用解決方案。 – TheHorse