gpt4 book ai didi

java - 封装 "modules"的最佳 GWT CodeSplitting 设计

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:02:14 25 4
gpt4 key购买 nike

我目前面临着与 GWT 代码拆分相关的相当具有挑战性的问题,希望得到一些帮助。

我目前正在处理一个大型遗留 GWT 应用程序(MVP 之前的日子),我希望根据“portlet”(我们称之为构建页面的各种复合小部件)的模块对这个应用程序进行代码拆分与)是一部分。

目前,我们的模块仅由 portlet 所属的包标识,但我愿意更改此设置以更好地适应合理的通用代码拆分设计。

关于如何设计此代码以指示 portlet/组合属于特定“模块”然后拆分代码以便第一次加载模块 X 中的任何 portlet/组合时,整个模块的任何想法X 加载了吗?

谢谢

最佳答案

嗯......通常,这很简单,但我想这不是你真正的问题......

只需使用这个:

GWT.runAsync(new RunAsyncCallback() {
public void onFailure(Throwable reason) {
...
}
public void onSuccess() {
...
}
});

onSuccess 方法中的所有内容将被拆分到另一个 javascript 文件中,然后按需加载。

如果您想将复合 Material 与其余代码分开,只需将复合 Material 的创建放入此 onSuccess 方法中即可。

您还可以嵌套 GWT.runAsync 方法,这样您就可以在不同的部分再次拆分该部分,例如首先 GWT.runAsync 加载模块 X,在模块 X 的构造函数中,您可以执行另一个 runAsync,然后加载您的合成。

当然,这部分之间可能存在一些依赖关系,这使得编译器难以拆分,但我已经用我的一个项目(大约 40k 行代码)对其进行了测试,它的效果非常好。

关于java - 封装 "modules"的最佳 GWT CodeSplitting 设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6883929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com