如何将GWT模块划分为一些单独的javascript文件?

时间:2010-04-09 16:20:26

标签: gwt module

我有一个很大的GWT模块,它由许多java类组成(当然,不可能将它分解为几个模块)。

我的GWT应用程序包含一些表单,但用户通常只使用其中的一些表单,无论如何,他们应该能够根据需要打开任何表单。

现在我的问题是gwt会生成一个大的js文件,每次都会加载,但是大部分内容都可能永远不会使用!

有没有办法将大js模块文件分成几个较小的文件(例如,每个类一个文件)& gwt会根据需要自动加载吗?

1 个答案:

答案 0 :(得分:3)

您需要代码拆分 - http://code.google.com/webtoolkit/doc/latest/DevGuideCodeSplitting.html

从概念上讲,将代码视为以onModuleLoad()方法开头的树。每个方法调用都是此树中的一个分支。现在GWT的代码分割是一个斧头,你可以在任何分支切割树。您可以随意和任意次数剪切树。

启动时,GWT只会加载包含onModuleLoad的树的一部分。首次访问该部分时,将加载其他文件。在代码方面,其他分支将以异步方式加载,并且在完成加载后将在回调中通知您。

阅读我上面粘贴的链接上的文档。它有足够的材料让你入门。