Dojo的压缩

使用Dojo开发了页面的全部交互代码,写完之后发现性能问题挺大。Dojo本身的代码规模倒不大,最大的问题是dojo的module机制把代码分散在大量的小碎javaScript文件里,一个页面装载的时候就压几十个请求到server上,页面装载时间非常慢。

本来准备换成jQuery的,昨天晚上试了一下,使用Dojo需要20多秒来装载的页面,换成jQuery以后1秒就成了。但是换框架这事还是一个比较大的架构考量,意味着对我的所有jsp页面要做重构。

早晨和李蛟一同上班,谈到了这个问题,他介绍了Dojo build系统给我,回来赶快试了一下,发现正好是我所需要的。打印了这篇文档下来:

http://dojotoolkit.org/documentation/tutorials/1.7/build/

首先要说一下Dojo 1.7的新的module模型。假定如下一个简单的HTML项目结构:

/

  index.html

扫描二维码关注公众号,回复: 701245 查看本文章

  js/

    lib/

      dojo/

      dijit/

      dojox/

    my/

    util/

我们在HTML里先把dojo.js装载进来:

<script data-dojo-config="async: true" src="js/lib/dojo/dojo.js"></script>

下一步通过dojoConfig告诉几个dojo module的位置:

var dojoConfig = {
    baseUrl: "/js/",
    tlmSiblingOfDojo: false,
    packages: [
        { name: "dojo", location: "lib/dojo" },
        { name: "dijit", location: "lib/dijit" },
        { name: "dojox", location: "lib/dojox" },
        { name: "my", location: "my", main: "app" }
    ]
};

猜你喜欢

转载自lao-lee.iteye.com/blog/1419978