私はシンプルなタブパネルを持っています。現在アクティブなタブの子コンポーネントを取得して破棄したいdoLayout()
. 次のコードは機能しません。
Ext.getCmp('centertabpanel').getActiveTab().items.destroy();
ここで留意すべきことの 1 つは、ExtJS の TabPanel のタブは、ExtJS 3 のBoxComponentまたは ExtJS 4 のComponentである必要があるということです。これは、子要素を保持するためにタブが必要ないことを意味します。ただし、Containerscentertabpanel
のタブがあることがわかっている場合は、次の 2 つのオプションがあります。
タブがautoDestroy
true (デフォルト) に設定されたコンテナーである場合は、次を使用します。
Ext.getCmp('centertabpanel').getActiveTab().removeAll();
falseに設定autoDestroy
する場合は、次のコードを使用します。
Ext.getCmp('centertabpanel').getActiveTab().each(function(item, idx, len) {
item.destroy();
});
.each()
MixedCollectionで定義されています。すべての子アイテムに対して、最初のパラメーターの関数を順番に実行します。補足として、関数内で false を返すと、要素のすべての反復が停止します。