2010-04-09 50 views
1

我有一个很大的GWT模块,它由许多Java类组成(当然,它不可能分解成几个模块)。如何将GWT模块分成几个独立的javascript文件?

我的GWT应用程序由一些表单组成,但用户通常只与其中一些表单一起工作,无论如何他们应该能够根据需要打开任何表单。

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

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

回答

3

需要编写代码分裂 - http://code.google.com/webtoolkit/doc/latest/DevGuideCodeSplitting.html

概念,认为你代码开始您的onModuleLoad()方法中的一棵树。每个方法调用都是该树中的一个分支。现在,GWT的代码拆分是一个斧头,你可以在任何分支上砍树。你可以在任何地方和任何你想要的次数切割你的树。

在启动时,GWT将只加载包含onModuleLoad的树的部分。其他人将在您第一次访问该部分时加载。在代码方面,其他分支会被同步加载,并且在加载完成后会通过回调通知您。

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

相关问题