2012-08-24 75 views
0

我一直在围绕Sencha Touch2应用程序开发Android和iPhone。虽然我不是流动新手,但我仍然在学习Sencha Touch和ExtJS。如何提高Sencha Touch 2.x应用程序的性能

我的应用程序在每个屏幕上都有几个带ListView的屏幕。我的应用程序遵循Sencha MVC模式。它使用卡片布局,放置在视图端口上,并在其上添加不同的表格/组件。一个AJAX请求是为了使数据可用于所有屏幕。作为响应,我获得了1000条记录的JSON响应。 Json响应示例如下。

[{ 
    "key1": "Similarities between Operations and Projects", 
    "value1": "Some Value"}, 
{ 
    "key2": "Differences between Operations and Project", 
    "value2": "Some Value"}, 
.... {}, {}, {} 

] 

我不得不解析JSON,并更新商店,使我的列表将显示所有内容。我已经尝试过了

  1. 直接使用代理商店
  2. 手动应用循环和添加记录存储

但在这两个应用程序是该死的缓慢方式做的两种方式。

我对JavaScript的理解可能是1000条记录很大。但我想明白,如果我可以在任何情况下做得更好。

我已经做了goggling和上搜索堆栈溢出(下面粘贴的链接),但是,没有发现任何令人满意的。

PhoneGap 1.4 wrapping Sencha Touch 2.X - What about performance?

我的想法: 目前所有的记录/ JSON响应对象存储为一个全局对象。我可以通过将其存储到SessionStore或LocalStore来减少它。这个陈述是否有效?

请帮助我明白,如果我能在反正改善。

+0

多少意见,你有你的煎茶项目 – Ram

+0

@Ram,我身边有6个屏幕 –

+0

第一重要的事情就是你需要创建视图只有当你需要我的意思是你必须动态创建视图,通过删除在屏幕上不可见的视图,并创建需要显示的视图 – Ram

回答

1

基于上的复杂性,有点难以回答这个问题,该应用程序如何缓慢。

是否加载缓慢?

实现分页肯定会帮助这个,我不能想象的1K的记录是一瞬间的事情一个JSON回报。

寻呼是你的朋友。

简介加载时间在浏览器中,和玩什么杀了你。 (这通常修复的我有问题,99%在这方面)

它是laggy?

Rescoping提高了速度,但同样,看着周围的JS范围等实际播放往往是在优化(ExtJS的有它的API,它这是基于了,我想这是一个败局足够怪异位)。

如果你去看vids on performance,他们会给出关于动态创建组件的建议,销毁任何不活跃的东西等等,但是这(对我来说至少)是内存管理的事情。

TL:DR:

在个人的经验,我已经有40×10格在煎茶触摸落后,我想,一个1000x1电网将陷于你来个急刹车。

管理这个在服务器端,和你的烦恼就会消失:)

相关问题