Phi*_*hil 7 extjs sencha-touch sencha-touch-2
我坚持一个我认为非常重要的问题.在简单的Sencha Touch应用程序中,我有很多观点.我的主视图是一个TabPanel,底部有对接图标.有时在我的应用程序中,我切换到Tabpanel之外的另一个视图.我不希望DOM重载视图,我不再需要了,所以我正在寻找解决方案来销毁视图,当它处于非活动状态时.我试过这个,同时在我的控制器中切换到另一个视图:
this.getMainview().destroy();
Run Code Online (Sandbox Code Playgroud)
似乎Mainview被删除但我收到一个错误:
Uncaught TypeError: Cannot read property 'dom' of null
Run Code Online (Sandbox Code Playgroud)
所以我想.destroy() - 方法有什么问题或是否有更好的方法来处理这个问题?
在移动到新视图之前,您可以调用以下代码来删除当前视图
Ext.Viewport.remove(Ext.Viewport.getActiveItem(), true);
Run Code Online (Sandbox Code Playgroud)
或者您也可以提供项目对象而不是ActiveItem
我以前多次坚持这个问题.目前看来,在Sencha Touch 2中没有高效且实际上没有错误的解决方案.当第二次再次添加视图时,将再次显示该不愉快的错误.
可能的解决方案:
此代码段:
your_container(your_container.getActiveItem(), false);
实际上不会从内存中破坏你的子组件,而是从DOM中删除.稍后当你添加它时,将没有错误(因为我已经测试过).
希望能帮助到你.
| 归档时间: |
|
| 查看次数: |
16351 次 |
| 最近记录: |