我的 GWT 应用程序有一个导航栏,其中包括 3 个视图:主视图和 View1、View2、View1 和 View2 由它们的活动控制,并且都使用相同的小部件(它们在其构造函数下分别新建小部件)。当应用程序首次启动时,它将转到主页。
在进行代码拆分时,我发现公共小部件包含在剩余部分中,但我希望它只能在用户单击 view1 或 view2 时下载,而不是在剩余部分中,有什么方法可以实现这一点?
谢谢。
如果您的用户很可能会转到视图 1 或视图 2,则最好将此小部件保留在剩余的片段中。它不会减慢应用程序的初始渲染速度,并且会在用户思考下一步该去哪里时加载剩余代码。当用户单击视图 1 或视图 2 时,小部件将已加载。
在大多数情况下,编译器不会合并视图 1 和视图 2 片段,除非它们共享大量代码,而不仅仅是一个小部件,尽管您可以通过减少所需片段的数量来强制编译器更积极地进行合并。
啊哈,就在我发布这个帖子之后,我发现https://developers.google.com/web-toolkit/articles/fragment_merging完全解决了我的问题。这是 GWT 2.5 的新功能。