1

Dojo 的按需加载结构实际上是一种性能改进吗?至少对我来说?

我公司的网站将切换到主要使用 Dojo 的 IBM Websphere。我的公司非常关心页面性能,主要是在“页面加载秒数”方面。因此,我们得到的指令是“尽量减少对服务器的点击”,所以在我们当前的网站上,我们在推广到生产之前汇总了所有的 .js 文件。

但该指令现在基本上正在成为法律,所以如果我要反对它,我需要一个很好的理由。除了“这是个好主意”和“仅在需要时加载”(后者实际上仅基于前者,至于我可以告诉)。

然后,如果我将所有内容都压缩到一个文件中,我将根本无法使用 dojo.require() 语句,不是吗?(想法是,如果我可以将开发方面按模块拆分以使组织更加合理,然后将生产版本放在一个文件中,但是 dojo.require() 在那里不再有意义,然后我就有了一个越来越复杂的情况,我需要构建对 javascript 做一些侵入性的事情来打包生产。)

请抵制“这取决于”的答案。我见过的最佳实践文档(雅虎、谷歌等)几乎只是说“减少页面加载”,并没有太多“它取决于”。但是 Dojo 的框架对于它的方法似乎如此明确,我想知道是否有更有说服力的论据。

4

1 回答 1

1

Dojo 实际上结合了这两种方法。在开发模式下,您有许多文件使用definedojo.require已过时)动态加载其他模块。这对于抽象和开发非常有用。

然后是“生产模式”,您可以使用 dojo 构建系统将所有这些小文件编译成一个或多个(也称为层)缩小的 Javascript 文件。这减少了对服务器的命中,同时仍保持所有模块化。使用分层方法,以后需要的应用程序数据将自动从单独的文件中加载。

见: http ://dojotoolkit.org/blog/learn-more-about-amd

http://dojotoolkit.org/reference-guide/1.7/build/

于 2012-08-01T16:31:17.057 回答