【发布时间】:2013-03-27 18:38:19
【问题描述】:
我正在使用 Extjs 动态添加新选项卡。但是有没有办法可以将新添加的选项卡保存在某处(可能在数据库中),因为我必须呈现用户动态创建的所有选项卡,每当用户重新-访问该页面。
我可以制作标签,将标签的状态保存在cookie中。但我知道,为了保存新创建的标签的状态,我必须先保存Html(?)sn-p某处的标签?
这是我的代码:
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();
}
}
]
}]
});
}
});
我想在这里做一些不切实际的事情吗?或者是否有可能以某种方式存储新创建的选项卡并在页面加载时使用新创建的选项卡呈现整个选项卡?
我很抱歉问了这么广泛的问题:)
谢谢。
【问题讨论】:
标签: javascript extjs tabs state state-saving