GWT自动生成JavaScript代码。
我无法理解生成的代码事件机制。 例如,当我点击按钮时会运行哪个功能?
我很想看到GWT为带有解释的按钮生成的javascript
答案 0 :(得分:1)
对于事件处理,GWT将EventListener
(通常是您的小部件)作为元素的expando属性(称为__listener
)附加。然后,所有事件都由一个 dispatch 方法处理,该方法查看事件目标的__listener
expando并将事件分派给它。当然,调度方法可以做得更多(事件预览,输入/最终调度命令等)
此舞蹈是(或至少是)需要避免浏览器(主要是IE)中的内存泄漏。您可以在GWT wiki中找到更多详细信息:https://code.google.com/p/google-web-toolkit/wiki/DomEventsAndMemoryLeaks
答案 1 :(得分:0)
在GWT中开发时,您不关心JavaScript。
您应该查看 Java 代码,并搜索处理按钮的click事件的函数。
答案 2 :(得分:0)
编译代码时Compiler
会生成自动Javascript
函数......而且压缩也是如此(这取决于你的编译类型)。
很难找到相应的函数和窗口小部件ID,因为它们是generated
compiler
的.. {更好的调试gwt
代码是托管模式..
即使你想在编译时读取生成的代码,也要将编译类型赋予
DETAILED
,它在PRETTY
上有更多细节(例如非常详细的变量名称)
此处仍有more个详细信息。
答案 3 :(得分:0)
每当您需要了解GWT的输出js时,您应该使用GWT编译器选项STYLE
。 GWT默认压缩和混淆javascript输出,因为它使用 OBF 作为STYLE的默认值。
为防止压缩和混淆,您可以使用 PRETTY 或 Detailed 作为STYLE参数的参数。
注意:您应始终使用OBF模式进行生产,因为它可确保最小的带宽使用量以及混淆。