Extjs Sencha视图之间的导航

Extjs Sencha视图之间的导航,extjs,sencha-touch,sencha-touch-2,Extjs,Sencha Touch,Sencha Touch 2,我正在开发sencha touch应用程序,它有很多视图,视图之间有很多导航,我使用以下代码实现了这一点 Ext.Viewport.add({ xtype : 'view2' }); Ext.Viewport.animateActiveItem(this.getView2(), { type : 'slide', direction : 'right' }); 但是,假设用户从view1导航到view2,从view2导航到view3,从view3导航到view3,当用户

我正在开发sencha touch应用程序,它有很多视图,视图之间有很多导航,我使用以下代码实现了这一点

Ext.Viewport.add({
    xtype : 'view2'
});
Ext.Viewport.animateActiveItem(this.getView2(), {
    type : 'slide',
    direction : 'right'
});
但是,假设用户从view1导航到view2,从view2导航到view3,从view3导航到view3,当用户返回我上面编写的从view3导航到view2的代码时

上面的代码正常工作,但是view1首先像一个闪光灯一样出现,然后移动到view2


有时在视图之间导航时会出现白页

sencha touch中提供的一个组件正好用于此目的(处理多视图推送/弹出),它就是。如果您参考文档,您将看到提供了许多配置选项,可以帮助您设计和维护视图。 导航视图最重要的一点是,无论何时按下新视图,您都会看到一个
后退按钮

基本上,其思想是,将父视图作为导航视图,所有其他视图作为子视图添加到此父视图。所以,每当您添加一个新的子对象时,它就会被推到堆栈上。和stack一样,我们可以在这个导航视图中推送或弹出视图

导航视图还有一个很酷的地方,那就是你不必再担心DOM的大小了。通过正确的配置设置,sencha touch将在弹出未使用或不必要的视图时立即删除这些视图。这将帮助您提高应用程序的性能

我几乎在所有深度视图级别高达6-7的项目中都使用了导航视图。如果处理得当,这从来都不是问题


您正在遵循的当前策略可能存在其他一些问题,但您可以改用导航视图,并看到其中的差异,我强烈建议您这样做。

我可以获得任何使用导航视图的示例项目链接吗。不幸的是,我的所有项目都是应用程序,没有托管在任何地方。可以在业余时间创建简单的示例,并让您知道。:)