Minimize Number of JavaScript Files to Load

From Documentation
DocumentationZK Developer's ReferencePerformance TipsMinimize Number of JavaScript Files to Load
Minimize Number of JavaScript Files to Load


Stop.png This documentation is for an older version of ZK. For the latest one, please click here.


Overview

ZK loads the required JavaScript files only when it is required. It is similar to Java Virtual Machine's class loader, but ZK's JavaScript loader loads a JavaScript package at once. It minimizes the number of bytes to be loaded to a browser. However, with an Internet connection, a Web page is loaded faster if the number of files to load is smaller (assuming the total number of bytes to transmit is the same).

ZK, by default, loads both zul and zul.wgt packages when the zk package is loaded, since they are most common packages a ZK page might use. A ZK page generally uses more packages than that, and you, as an application developer, can pack them together to minimize the number of JavaScript files.

Notice that the more packages you packed, the larger the file it is. It will then slow down the load time if some of packages are not required. Thus, only packed the packages that will be required by most of users.

Minimize the Number of JavaScript Files for a ZUL Page

System-wide Minimizing the Number of JavaScript Files

[since 5.0.4]

If a package is used by all your pages, you could configure it system wide by specifying the packages in the language addon. Please refer to ZK Configuration Reference/zk.xml/The language-config Element for how to specify a language addon.

For example, if the zul.wnd package (Window) is required for all pages, then you could add the following to the language addon.

<javascript package="zul.wnd" merge="true"/>

Notice that you have to specify the merge attribute which indicates the JavaScript code of the package will be loaded with the zk package. In other words, the ~./js/zk.wpd will contain all the packages specified with the merge attribute.

Also notice that if you use several DSP/JSP file to load multiple packages in a file as described in the previous section, you generally don't specify them here. Otherwise, you will load the same package twice (though it is safe, it wastes time).



Last Update : 2010/08/22

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.