GWT应用程序里面包含许多小应用程序。编译完成后,这些模块已按需加载,但随着应用程序变大,在编译之前或启动GWT托管模式之前,还需要以某种方式选择所需的模块。
有谁知道,实现这一目标的可行方法是什么?
答案 0 :(得分:2)
如果您想将一个大模块划分为不同的模块。首先,你应该逻辑地划分它们。例如,在我的案例中,文档管理,项目管理,CRM以及考虑使用一个Core模块来保存所有模块的utils和/或通用类。然后,您的每个模块都应该有单独的EntryPoints,它们穿过Core模块中的主EntryPoint。这个主要的EntryPoint控制调度到正确的模块。 例如在你的Core.gwt.xml
中<module>
<inherits name='com.google.gwt.http.HTTP'/>
<inherits name="com.google.gwt.user.User"/>
<inherits name="com.google.gwt.i18n.I18N"/>
</module>
并在您的pm.gwt.xml中继承核心模块。
<module rename-to="pm">
<inherits name="com.company.gwt.core.Core"/>
<entry-point class='com.company.gwt.pm.client.PMEntryPoint'/>
</module>
另一个提示是:阅读code splitting,如果您有大型应用程序,则必须使用它,否则整个应用程序(iejavascript包)会在应用程序的初始加载时下载到一个块中。除此之外可以使用此tool获得编译输出的结果。