WEB开发网
开发学院软件开发Java 改善 Dojo 应用程序的初始下载时间 阅读

改善 Dojo 应用程序的初始下载时间

 2009-09-28 00:00:00 来源:WEB开发网   
核心提示: 在清单 3 中调用 showItem 时,我隐藏了在主体中可能可见的任何内容,改善 Dojo 应用程序的初始下载时间(4),我然后进行检查,确定是否加载了 HTML,通过遵循一些指导原则和实践,可以很容易地减少下载应用程序的时间,如果未加载,将下载模板

在清单 3 中调用 showItem 时,我隐藏了在主体中可能可见的任何内容。我然后进行检查,确定是否加载了 HTML。如果未加载,将下载模板,然后将其缓存在 Dojo 词典中。下次请求此页面时,将会直接显示该区域。我还使用 dojo.addOnLoad 方法加载缺省页面。

在清单 3 中调用 showItem 时,我隐藏了在主体中可能可见的任何内容。我然后进行检查,确定是否加载了 HTML。如果未加载,将下载模板,然后将其缓存在 Dojo 词典中。下次请求此页面时,将会直接显示该区域。我还使用 dojo.addOnLoad 方法加载缺省页面。

不要全部使用 dijit

我们很可能喜欢为主要应用程序组件创建 dijit(Dojo 小部件)。例如,在清单 4 中,可以看到将应用程序处理为 Dojo dijit 的示例。

清单 4. 将应用程序处理为 dijit 可以减少下载时间

<div dojoAttachPoint = "registerId" 
 dojoType="registration:RegistrationWidget" 
 style="display:none" 
> 
</div> 
<div dojoAttachPoint = "datacenterId" 
 dojoType="datacenters:DataCentersWidget"  
 inputTopic="no.show.datacenter" 
 style="display:none"> 
</div>

在清单 4 中,我将每个应用程序组件都包装在 dijit 中。反过来,每个 dijit 都由子 dijit 组成。甚至可以将加载整个应用程序视为超 dijit:

<div id = "layout" dojoType="layout:EEFLayoutWidget" class="layoutDef"></div>

问题是,您忽略了延迟加载内容(或太过复杂而不能考虑这个选项),特别在构建中包括所有小部件的情况下。我发现,最好为 UI 组件(Data Grid、专用组合框、特殊文本区)创建 dijit,然后加载使用 dijit 的普通 HTML 模板。

通过遵循一些指导原则和实践,可以很容易地减少下载应用程序的时间,而且仍然能够获得 Dojo 具有的一些性能优势。

上一页  1 2 3 4 

Tags:改善 Dojo 应用程序

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接