2011-11-05 2 views
1

간단한 탭 패널이 있습니다. 현재 활성 탭의 자식 구성 요소를 가져 와서이를 파기하고 doLayout(). 다음 코드는 작동하지 않습니다extjs4에서 탭 패널의 활성 탭에 하위 구성 요소를 가져 오는 방법은 무엇입니까?

Ext.getCmp('centertabpanel').getActiveTab().items.destroy(); 
+0

Ext 3 또는 4를 사용하고 있습니까? – Ryan

+0

오류가 있습니까? – Ryan

+0

@ryan 오류가없고 아무런 문제가 없습니다. 아마도 내 qs는 구성 요소의 모든 하위 요소를 가져와이를 파괴하는 방법 일 것입니다. –

답변

2

한 가지를 염두에두고 여기의 ExtJS에서 탭 패널 년대 탭 그냥이 탭이 있음을 의미는 ExtJS 3의 BoxComponent 또는 ExtJS로 (4)의 Component 할 필요가있다 어린이 요소를 보유 할 필요는 없다. 당신이 당신의 centertabpanelContainers와 탭이 알고 경우, 다음 두 가지 옵션이 있습니다 : 당신의 탭이 true로 autoDestroy 세트 (즉, 기본값)이 컨테이너의 경우

를, 그럼 그냥 사용

Ext.getCmp('centertabpanel').getActiveTab().removeAll(); 

Ext.getCmp('centertabpanel').getActiveTab().each(function(item, idx, len) { 
     item.destroy(); 
    }); 

.each()MixedCollection에 정의되어 false로 autoDestroy을 설정하려면

는 다음 코드를 사용합니다. 모든 하위 항목에 대해 첫 번째 매개 변수의 함수를 순서대로 실행합니다. 부수적으로, 함수 내부에서 false를 반환하면 요소의 모든 반복이 중지됩니다.