3

タブのリストがあります。タブを切り替えるたびに、項目がタブに追加されて再描画され、古いタブが破棄されます。パフォーマンス上の理由からこれを行っています。

これは私がそれをやろうとした方法ですが、うまくいきません

view=    Ext.Viewport.add({                
                xtype : 'tabpanel',  
                deferredRender:false,
                tabBarPosition : 'bottom',
                items : tabs,
                listeners : 
                {
                    activeitemchange : function(container, newValue, oldValue,opts)
                    {
                        // --> destroy old tab
                        oldValue.setItems([]);
                        index = container.items.findIndex('id',newValue.id);
                        // --> redraw new tab                            
                        newValue.add(tabItems[index-1]);
                    }
                }
});

タブは初回のみロードされます。2回目にタブに入ると、
Uncaught Error: NOT_FOUND_ERR: DOM Exception 8が表示されます

これを行う適切な方法は何ですか?
そして、これは、アイテムを含むタブを作成するよりも本当にパフォーマンスが高いですか。

ありがとうございました

4

1 に答える 1

2

なぜこれをやりたいのかわかりません。これは、実際のタブタブパネルから削除されることを意味します。それはあなたが望むものですか?

確かに、タブパネル項目を削除したいだけですよね? その場合は、 を使用しないことをお勧めしますtabpanel。代わりに、カード レイアウトとtabbarコンポーネントを含む通常のコンテナーを使用する必要があります。そうすれば、タブバーは複数のタブを持つことができ、コンテナ (偽のタブパネル)は複数の項目を持つふりをすることができますが、1/2 しかありません。

于 2012-04-18T21:53:10.287 に答える