1
で偽がどのようにautoDestroyを行います。挙動:Extjs4
<html>
<head>
<link rel="stylesheet" type="text/css" href="../resources/css/ext-all.css" />
<script type="text/javascript" src="../bootstrap.js"></script>
<script type="text/javascript">Ext.require('Ext.tab.*');
Ext.onReady(function(){
var tabs = Ext.create('Ext.tab.Panel', {
width: 400,
height: 400,
renderTo: document.body,
autoDestroy: false,
items: [{
title: 'Home',
html: 'Home',
itemId: 'home'
}, {
title: 'Tickets',
html: 'Tickets',
itemId: 'tickets',
closable: true,
closeAction: 'hide'
}]
});
Ext.create('Ext.button.Button',{
id: 'buttonId',
text: 'Recreate Tab',
renderTo: Ext.getBody(),
handler: function(){
var tickets = tabs.child('#tickets');
tickets.tab.show();
}
});
});
</script>
</head>
<body>
<div id="tabs1">
<div id="script" class="x-hide-display"></div>
<div id="markup" class="x-hide-display"></div>
</div>
</body>
</html>
:偽のは、実際に私はタブを閉じると、ボタンのクリックで、それを再作成しようとしています。4. EXT-Jsの中で動作しますが、ここでのコードを参照してください。
しかし、それはUncaught TypeErrorを与えます:ボタンのクリックでnullのプロパティ 'tab'を読むことができません。どうして ?
「パネルを閉じる前にそのパネルを追跡してから、tabs.addを使用して戻す必要があります」という意味を理解できませんでした。 autoDestroyの目的ではありません:falseは、タブのインスタンスを破棄せず、ただ非表示にすることです。 – user1227794
破壊されませんが、タブパネルから削除されます。あなたは 'Ext.create'の直後に' tabs.child ... 'を試してから、その変数をハンドラのタブに追加するか、あるいは元々作成した設定を' tabs.add'だけ追加することができます。 –
パネルを閉じてからtabs.addを使用して戻す方法を説明することは可能でしょうか?お願いします? – user1477388