Extjs を使用して新しいタブを動的に追加しています。しかし、ユーザーがページに再アクセスするたびに、ユーザーが作成したすべてのタブを動的にレンダリングする必要があるため、新しく追加されたタブをどこかに (おそらくデータベースに) 保存する方法はありますか? .
タブを作成して、タブの状態を Cookie に保存できます。しかし、新しく作成したタブの状態を保存するには、最初にタブの Html(?) スニペットをどこかに保存する必要があることを知っていますか?
これが私のコードです:
var tab;
var tabIndex = 0;
var tabArray = [];
Ext.application({
launch: function() {
Ext.state.Manager.setProvider(new Ext.state.CookieProvider({
expires: new Date(new Date().getTime() + (1000 * 60 * 60 * 24 * 7))
}));
Ext.create('Ext.container.Viewport', {
layout: 'absolute',
items: [{
x: 50,
y: 50,
width: 300,
height: 300,
xtype: 'tabpanel',
stateful: true,
stateId: 'tp1',
stateEvents: ['tabchange'],
getState: function() {
return {
activeTab: this.items.findIndex('id',this.getActiveTab().id)
};
},
applyState: function(s) {
this.setActiveTab(s.activeTab);
},
items: [{
id: 'c0',
title: 'Tab One'
}, {
id: 'c1',
title: 'Tab Two'
}, {
id: 'c2',
title: 'Tab Three'
}],
bbar: [
{
text: 'Add Tab',
//region: 'south',
xtype: 'button',
handler: function () {
var tabs = this.up('tabpanel');
tab = tabs.add({
title: 'Tab ',
closable:true,
xtype:'panel',
width: '100%',
height: '100%',
items: []
}).show();
}
}
]
}]
});
}
});
ここで非現実的なことをしようとしていますか? または、新しく作成されたタブを保存し、ページの読み込み時に新しく作成されたタブでタブパネル全体をレンダリングすることは可能ですか?
このような大まかな質問をして申し訳ありません:)
ありがとう。