1

我有一个 GWT 模块,它定义了一个构建 UI 的入口点(我们称之为模块 A)。

我在另一个模块(比如模块 B)中继承模块 A,该模块通过自己的入口点构建自己的 UI,重用继承的模块 A 中定义的类。

我的问题是,当我初始化模块 B 时,模块 A 和 B 的入口点都被实例化并触发(通过 onModuleLoad 方法)。这会导致两个入口点依次修改相同的 UI,从而导致页面损坏。

所以,我想继承一个模块,但我不希望在应用程序初始化期间激活它的入口点。如何继承模块,但避免初始化其入口点类?

4

1 回答 1

4

与其从 B 继承 A,并添加更多需要构建的入口点,不如考虑制作第三个模块。新的 Z 应该是 A 和 B 都需要的公共代码,并且不应该有入口点。这样,A 和 B 都可以从 Z 继承,并根据需要添加自己的入口点。


如果上面不能使用(例如,如果你不能编辑 A),另一种选择可能是在与 A 相同的包中添加一个新模块,将其命名为 A2,并为其赋予与 A 相同的内容,减去入口点。然后,B 可以改为从 A2 继承。

于 2012-07-13T15:16:31.930 回答