切换视图后维护视图实例

时间:2014-02-17 06:05:30

标签: extjs extjs4 extjs4.1 extjs4.2 extjs-mvc

我有一些布局,其中我以不同的顺序重新排列一组组件(视图)。

我想要实现的是,应该在不同的布局上呈现相同的视图实例,以便维护视图的状态。

我做过类似的事情

Ext.define('MyApp.view.FirstView',{
    extend:'Ext.container.Container',
    alias:'widget.firstView'
});

Ext.define('MyApp.view.SecondView',{
    extend:'Ext.container.Container',
    alias:'widget.secondView'
});

Ext.define('MyApp.view.HboxLayout',{
    extend:'Ext.container.Container',
    layout:{ type:'hbox',align:'stretch'},
    items:[
        { xtype:'firstView'},
        {xtype:'secondView'}]
});

Ext.define('MyApp.view.VboxLayout',{
extend:'Ext.container.Container',
layout:{ type:'vbox',align:'stretch'},
items:[
        { xtype:'firstView'},
        {xtype:'secondView'}]
});

任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

如果容器配置了autoDestroy:false,你可以在容器上调用remove方法,同时保持对它的引用。

然后,您可以使用添加或插入方法将仍具有引用的视图添加到另一个容器中。

以下是一些链接:

http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.container.AbstractContainer-cfg-autoDestroy http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.container.AbstractContainer-method-remove http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.container.AbstractContainer-method-add