为了在我们的应用程序的各个部分之间提供漂亮的URL,我们将所有内容拆分为独立编译的几个模块。例如,有一个“经理”部分和一个“编辑”部分。编辑器将在新窗口中启动。通过这样做,我们可以直接链接到编辑器:GWT中的大型应用程序:一个模块还是几个?
/com.example.EditorApp?id=1
EditorApp模块只是获取id的值并加载文档。
问题在于这两个模块之间通用的所有代码在输出中都是重复的。这包括任何静态内容(图形),样式表等
而另一个问题是编译时生成JavaScript是近一倍,因为我们有具有将被处理两次两个模块之间共享一些复杂的代码。
有没有人处理过这个?我正在考虑拆分单独的模块并将它们全部合并到一个编译目标中。唯一的缺点是我们的“应用程序”的网址成为了类似:
/com.example.MainApp?mode=editor&id=1
每个窗口加载主模块,检查模式参数的值,并调用相应的模块初始化代码。
这可能有所帮助:http://code.google.com/webtoolkit/doc/latest/DevGuideCodeSplitting.html – 2010-12-30 08:17:51
是的。我在GWT 2.x发布之前问过这个问题。事情变得更加简单和强大。 – 2010-12-31 06:16:01